iwalking

步走在神秘的路上,从窄缝里观望世界的变迁…

mysql编码的深入理解

2008年08月28日 星期四   发表人: iwalking
分类: php和mysql

在大家都能够正常显示中文的时候,大家都认为没有问题了。

实际上,问题依然存在。

1.中文的数据以latin1,如果使用PHPMyAdmin看的话是乱码

我来解释一下它的工作方式:

入库:client (utf8,gb2312)=>database (latin1)

出库:database (latin1)=>client (utf8,gb2312)


在这其中会看到个别的中文出现乱码现象,就是因为在编码转换的时候丢失了一部分字符

乱码的显示:

入库 client (gb2312)=>database (latin1)

出库database (latin1)=>client (utf8)

如果在my.cnf里将默认编码改为gb2312,则:

出库database (latin1)=>client (gb2312)

显示正常,但是依然还会有少量的字符丢失

彻底解决的办法就是将编码统一,需要在安装的时候指定charset,并修改my.cnf中的默认编码:

实现:

入库 client (utf8)=>database (utf8)

出库database (utf8)=>client (utf8)

or:

入库 client (gbk)=>database (gbk)

出库database (gbk)=>client (gbk)

or:

入库 client (gb2312)=>database (gb2312)

出库database (gb2312)=>client (gb2312)

相关文章

我也来说两句

昵称:

邮箱:

网址:

订阅我的博客
google reader 订阅到鲜果 订阅到抓虾 bloglines my yahoo Rojo
网友评论
  • NBA: Ну что ж, все праздники поз...
  • Шопен: С Рождеством Христовым вас...
  • Праздник: Поздравляю автора блога и ...
  • Снегурочка: С Новым Годом! Успехов во в...
  • knightby: 嗯,很不错 不介意转载吧...
01月 2009
« Nov «-»  
 1234
567891011
12131415161718
19202122232425
262728293031