首页 > 代码库 > MySql中文乱码问题(3)

MySql中文乱码问题(3)

MySql的客户端是在dos界面上,然而dos界面默认的字符集编码方式是:GBK

(1).MySql字符转换原理图


(2).查看服务器的所有编码方式:

>show variables like ‘character%‘;


(3).通过以上观看,如果不想出现中文乱码情况,需要指定客户端的编码方式、连接器的编码方式、返回数据的编码方式;

#设置客户端为GBK:
>set character_set_client=gbk;

#设置连接器使用UTF8

>set character_set_connection=utf8;

#如果有返回值,设置返回值的以GBK的编码方式:

>set character_set_results=gbk;

注意:这些仅仅限制于当前的dos黑屏界面,重启后又恢复原样了。如果想彻底改变,则进入MySql安装文件中,修改my.ini配置文件,找到client 中的:default_character_set=gbk;

(只修改客户端就行了)

(4)用set names gbk;(可以一次性的将这三种设置相同的格式)



(5)总结:理解上面的原理图后,因此解决乱码问题二种方案:
   1>在当前MySQL客户端修改输入和输出的MySQL环境变量为GBK或GB2312(当前有效)
   2>修改MySQL目录下的my.ini文件,将客户端的缺省编码方式改为GBK或GB2312,注意,需要重新启动MySQL服务