作者:qlb | 来源:互联网 | 2017-05-12 15:07
MySQL数据库的中文乱码问题一直以来很是困扰人,不管是做java开发还是php开发。
MySQL数据库的中文乱码问题一直以来很是困扰人,不管是做java开发还是php开发。
一直以来,为了简化这个问题,我都是在我所有的JSP页面中设置编码都是utf-8,同时在创建MySQL数据库是,也设为utf-8编码,,以防止出现莫名其妙的中文乱码问题。但是今天发现了一个更简便的方法,没有深究原因,但能快速的诊断及解决乱码。(没有测试所有的可能,概而化之)
1、如果在MySQL控制台下,查询数据库发现原来插入的中文显示为乱码,那么可以使用"status"命令查看当前MySQL数据库的状态。查询出来的结果中,有这么几项与字符编码有关的项:
Server characterset: utf8 --安装MySQL服务器是设定的服务器编码
Db characterset: utf8 --数据库默认编码
Client characterset: utf8 --客户端字符编码
Conn. characterset: utf8 --连接时采用的编码
2、在MySQL控制台下,使用如下的命令,改变后两项的字符编码:
set names gb2312
这时再用“status”命令查看,后两项的编码已经变为“gb2312”了。
3、此时再查询数据库,发现乱码没有了,中文明明白白地在数据库里呢。
4、反之亦然,如果中文乱码情况下后两项编码是gb2312,那么就用“set names utf8”,将其改为“utf8”编码即可。
特此谨记!