怎么解决mysql插入数据乱码

怎么解决mysql插入数据乱码

在mysql插入数据后显示乱码的解决方法:

使用语句 show variables like 'character%'; 来查看当前数据库的相关编码集:

可以看到 mysql 有六处使用了字符集,分别为:client 、connection、database、results、server 、system。

其中与服务器端相关:database、server、system(永远无法修改,就是utf-8);

与客户端相关:connection、client、results 。

保证每一项的编码统一就不会产生乱码,当然支持中文的话也可以改成gbk,gb2312,utf-8等,建议是utf-8。在mysql中默认字符集是latin1,他是不支持中文的

与客户端相关:connection、client、results 。字符集可以通过set names utf8; 或者 set names gbk;进行修改数据库的编码集。

设置完成后即可解决客户端插入数据或显示数据的乱码问题了。

上述方法只可以在当前窗口有效,若要设置一直有效可以使用下面的方法解决;

在 mysql 的安装目录下有一个 my.ini 配置文件(linux下是/etc/my.cnf),通过修改这个配置文件可以一劳永逸的解决乱码问题。

在这个配置文件中 [mysql] 与客户端配置相关,[mysqld] 与服务器配置相关。默认配置如下:

[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8

下一节:mysql怎么设置不需要密码登录

数据库技术

相关文章