2014-09-24 12:11:51
来 源
中存储网
MySQL
MySQL乱码误区:近几天来搜索网上资源介绍理论上的可选编码方案为:gb2312/gbk/utf8等支持双字节的编码类型均可,实际试验过程中发现并不是这样的。A、大家跟风都想使用utf8,但UTF8在处理中文时并非想像中的理想,Select/Update/Insert均出现

,MySQL乱码误区:
近几天来搜索网上资源介绍理论上的可选编码方案为:gb2312/gbk/utf8等支持双字节的编码类型均可,实际试验过程中发现并不是这样的。
A、大家跟风都想使用utf8,但UTF8在处理中文时并非想像中的理想,Select/Update/Insert均出现乱码;
B、gbk字符集远大于gb2312,是第二首选字符集,但在Server/Database设定为GBK字符集后,在程序中连接都不成功(not support),更不用说操作;

最终解决方案:
1、选用gb2312编码
2、设置my.ini文件中的默认编码
分别在[mysql]和[mysqld]配置段中增加或修改default_charater_set=gb2312
3、创建数据库时编码选用gb2312
4、创建表时编码选用gb2312,Collation选用gb2312_chines_ci(gb2312_bin没有去试验)
5、针对具体需要存放中文的字段设定编码选用gb2312,Collation选用gb2312_chines_ci(gb2312_bin没有去试验)

改进:
如果确实需要存放gbk编码字符,请在连接成功后执行set names gbk 

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。