字符集还是挺麻烦的 就像有普通话 但同时还有数不清的方言 草 这就文化多样性
开始吧
mysql的字符集比较多:
character_set_client
character_set_connection
character_set_results

character_set_server
character_set_database
还有一些其他的字符集 不多举出来了 怎么说呢
有时候我们只要知道怎么做就行 能完成工作就行 内部原理可以忽略一点
客观地说 仅仅从文档获得的信息是不够的 至少我无法完全理解 但可以知道大概的思路
字符集就是这样的 先来看看my.ini配置文件中和字符集有关的内容:

[mysql]

#default-character-set=latin1
default-character-set=gb2312

[mysqld]
#character-set-server=latin1
character-set-server=utf8

可以看到mysql客户端和服务器端的默认编码设置
这个设置告诉我们什么:
服务器角度:客户端的字符集是gb2312 我要把这些字符内容转成utf8存起来
                当客户端向我请求数据 如查询等 我要取出utf8编码的字符内容
                然后转换成gb2312发给客户端

客户端角度:如果我程序中的字符编码是gb2312的 那很好 我用不着转换就可以
                直接发给服务器 如果不是 那对不起 先要转换成gb2312 然后再发
                给服务器哦 因为服务器默认把我发过去的字符当成是gb2312哦

好 其实 这就是全部 至于内部如何转换什么的 老实讲 我不看到源码是不可能太清楚的 文档 得了吧
posted on 2013-01-26 14:06 野猪红 阅读(311) 评论(1)  编辑 收藏 引用 所属分类: MySQL

评论:
# re: mysql 字符集 草 2013-01-30 20:25 | 秒大刀
果断废弃GB2312吧,随便一点国际化的挑战就会让成本激增
变长需求建议utf-8
定长需求建议unicode-16  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理