﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-野猪世界 专注图形技术-随笔分类-MySQL</title><link>http://www.cppblog.com/zhuyeaini/category/20362.html</link><description>ogre cegui wxWidgets bullet python lua</description><language>zh-cn</language><lastBuildDate>Sat, 26 Jan 2013 07:51:44 GMT</lastBuildDate><pubDate>Sat, 26 Jan 2013 07:51:44 GMT</pubDate><ttl>60</ttl><item><title>mysql 字符集 草</title><link>http://www.cppblog.com/zhuyeaini/archive/2013/01/26/197574.html</link><dc:creator>野猪红</dc:creator><author>野猪红</author><pubDate>Sat, 26 Jan 2013 06:06:00 GMT</pubDate><guid>http://www.cppblog.com/zhuyeaini/archive/2013/01/26/197574.html</guid><wfw:comment>http://www.cppblog.com/zhuyeaini/comments/197574.html</wfw:comment><comments>http://www.cppblog.com/zhuyeaini/archive/2013/01/26/197574.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhuyeaini/comments/commentRss/197574.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhuyeaini/services/trackbacks/197574.html</trackback:ping><description><![CDATA[草<br />草<br />草<br />字符集还是挺麻烦的 就像有普通话 但同时还有数不清的方言 草 这就文化多样性<br />开始吧<br />mysql的字符集比较多：<br />character_set_client<br />character_set_connection<br />character_set_results<br /><br />character_set_server<br />character_set_database<br />还有一些其他的字符集 不多举出来了 怎么说呢<br />有时候我们只要知道怎么做就行 能完成工作就行 内部原理可以忽略一点<br />客观地说 仅仅从文档获得的信息是不够的 至少我无法完全理解 但可以知道大概的思路<br />字符集就是这样的 先来看看my.ini配置文件中和字符集有关的内容：<br />
<p>[mysql]</p>
<p>#default-character-set=latin1<br />default-character-set=gb2312<br /><br />[mysqld]<br />#character-set-server=latin1<br />character-set-server=utf8</p>可以看到mysql客户端和服务器端的默认编码设置<br />这个设置告诉我们什么：<br />服务器角度：客户端的字符集是gb2312 我要把这些字符内容转成utf8存起来<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 当客户端向我请求数据 如查询等 我要取出utf8编码的字符内容 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 然后转换成gb2312发给客户端<br /><br />客户端角度：如果我程序中的字符编码是gb2312的 那很好 我用不着转换就可以<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;直接发给服务器 如果不是 那对不起 先要转换成gb2312 然后再发<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;给服务器哦 因为服务器默认把我发过去的字符当成是gb2312哦<br /><br />好 其实 这就是全部 至于内部如何转换什么的 老实讲 我不看到源码是不可能太清楚的 文档 得了吧<br /><img src ="http://www.cppblog.com/zhuyeaini/aggbug/197574.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuyeaini/" target="_blank">野猪红</a> 2013-01-26 14:06 <a href="http://www.cppblog.com/zhuyeaini/archive/2013/01/26/197574.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>