你是否遇到过这样的问题,尝试在Mysql中插入中文,但是显示插入错误,尝试显示写入数据库的中文,结果全是部显示乱码。
昨天我也遇到了同样的问题,在解决这个问题的过程中搜索了很多网上流传的方法,但发现并不是非常顺利。
首先如下图所示,输入代码段
set.jpgshow variables like '%char%';
显示所有设置,可以看到并非所有都是utf8,这里我们可以去mysql目录下的文件my.ini找到【mysql】,【mysqld】,【client】下方的设置改为utf8,然后重启mysql服务。
打开控制面板,输入
拒绝.jpgnet stop mysql
由上图可以看出提示拒绝访问,这是因为需要我们提供管理员权限,因此,如下图用管理员权限打开命令提示符。
管理员.jpg
然后重新输入,可以看到成功停止
停止和启动.jpg
再输入
net start mysql
启动服务
然后再打开数据库,显示设置
show.jpg
但插入中文仍然还是错误
插中文出错.jpg
于是选择输入
set names gbk;
再重新插入
插入成功.jpg
可以看到插入成功
然后再查看之前写入数据库的中文是否可以成功显示
再显示成功.jpg
可以看到最后成功显示。
总结:修改my.ini里的mysql,mysqld,client;重启mysql服务;若还是不成功,则输入set names gbk;最后显示成功。
网友评论