<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[沧海一粟]]></title> 
<link>http://www.dzhope.com/index.php</link> 
<description><![CDATA[Web系统架构与服务器运维,php开发]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[沧海一粟]]></copyright>
<item>
<link>http://www.dzhope.com/post//</link>
<title><![CDATA[MySQL数据库字符编码集合]]></title> 
<author>jed &lt;jed521@163.com&gt;</author>
<category><![CDATA[数据库技术]]></category>
<pubDate>Wed, 14 May 2008 23:26:28 +0000</pubDate> 
<guid>http://www.dzhope.com/post//</guid> 
<description>
<![CDATA[ 
	MySQL数据库字符集的默认配置：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在mysql的配置文件中把默认的字符集改成utf8，这样创建数据库和表的时候，默认的字符集就是utf8。<br/><br/>MySQL的几个变量：<br/><br/>当一个 PHP 程序与 MySQL 建立连接后，这个程序发送给 MySQL 的数据采用的是什么字符集？mysql如何检测并判断使用何种字符集？要注意以下几个变量：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;character_set_server：这是设置服务器使用的字符集 <br/>&nbsp;&nbsp;&nbsp;&nbsp; character_set_database：这是设置数据库使用的字符集 <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;character_set_client ：这是设置客户端发送Query串使用的字符集 <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;character_set_connection ：这是设置服务器需要将收到的查询串转换成的字符集 <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;character_set_results ：这是设置服务器要将结果数据转换到的字符集，转换后才发送给客户端<br/><br/>因为配置文件设置的 default_character_set 是 utf8，数据表默认采用的就是 utf-8 建立的。这也应该是所有采用 MySQL 4.1 的主机提供商应该采用的配置。所以我们要保证的只是客户端与 MySQL 交互之间指定编码的正确。 <br/>这只有两种可能，客户端以 gb2312 格式发送数据，或者以 utf-8 格式发送数据。 <br/>如果以 gb2312 格式发送: <br/>SET character_set_client='gb2312' <br/>SET character_set_connection='utf8' 或者 <br/>SET character_set_connection='gb2312' <br/>都是可以的，都能够保证数据在编码转换中不出现丢失，也就是保证存储入数据库的是正确的内容。 <br/>怎么保证取出的是正确的内容呢？考虑到绝大部分客户端 (包括 WP)，发送数据的编码也就是它所希望收到数据的编码，所以: <br/>SET character_set_results='gb2312' <br/>可以保证取出给浏览器显示的格式就是 gb2312。不过这样的缺点是不论是插入、更新、删除还是查询操作，只要是操纵数据库，都要先执行SET NAMES "gb2312"，这样才能保证插入和显示的正确性。如果插入操作前没有执行这条语句，仅在查询时执行该语句，则仍然无法保证显示的正确性。 <br/>如果是第二种情况，客户端以 utf-8 格式发送 (WP 的默认情况)，可以采用下述配置: <br/>SET character_set_client='utf8' <br/>SET character_set_connection='utf8' <br/>SET character_set_results='utf8' <br/>这个配置就等价于 SET NAMES ‘utf8′。<br/><br/>Tags - <a href="http://www.dzhope.com/tags/utf-8gb2312/" rel="tag">utf-8gb2312</a> , <a href="http://www.dzhope.com/tags/uft8/" rel="tag">uft8</a> , <a href="http://www.dzhope.com/tags/%25E5%25AD%2597%25E7%25AC%25A6%25E7%25BC%2596%25E7%25A0%2581/" rel="tag">字符编码</a> , <a href="http://www.dzhope.com/tags/%25E6%2595%25B0%25E6%258D%25AE%25E5%25BA%2593/" rel="tag">数据库</a>
]]>
</description>
</item><item>
<link>http://www.dzhope.com/post//#blogcomment</link>
<title><![CDATA[[评论] MySQL数据库字符编码集合]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.dzhope.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>