您的位置:首页 > 数据库 > MySQL

mysql 中文字符集

2014-11-04 15:14 363 查看
本文转载于http://mjq663.blog.163.com/blog/static/209372172009101011048924/

php 文件为UTF-8时的做法:在所有执行mysql_query函数做数据库插入删除查询之前 执行下面三个命令:

mysql_query('set character_set_client = utf8');

mysql_query('set character_set_connection = GBK');

mysql_query('set character_set_results = utf8');

而不是以前的 set names utf8命令创建数据库和创建表之时指定编码为gbk ,指定 整理为 gbk_chinese_ci;

CREATE DATABASE `test` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

这样你的网站永远 都不会有乱码问题了而且如果有一个字段是 username char(20),这样就可以插入20个汉字,而不是20/2或者 20/3之类如果插入的是20个汉字, select length(username)查看 会返回 40 ,也就是说,mysql 实际是用40个字符存储的但是我们不用去管他实际的存储,你想要限制多少就直接是指定char()多少就可以了,汉字和英文同样对待。

gb2312_chinese_CI : 只支持简体中文

gb2312_BIN   :而gb2312_bin可以说是gb2312_chinese_ci的一个子集,

而且gb2312_BIN是二进制存储.区分大小写

数据库编码格式就意义不一样了

gbk_chinese_CI   支持简体中文和繁体

gbk_bin   解释同gb2312_BIN     对应gbk_chinese_CI

mysql字符集和整理列表

armscii8 (ARMSCII-8 Armenian)  
armscii8_bin  亚美尼亚语, 二进制  
armscii8_general_ci  亚美尼亚语, 不区分大小写  
ascii (US ASCII)  
ascii_bin  西欧 (多语言), 二进制  
ascii_general_ci  西欧 (多语言), 不区分大小写  
big5 (Big5 Traditional Chinese)  
big5_bin  繁体中文, 二进制  
big5_chinese_ci  繁体中文, 不区分大小写  
binary (Binary pseudo charset)  
binary  二进制  
cp1250 (Windows Central European)  
cp1250_bin  中欧 (多语言), 二进制  
cp1250_croatian_ci  克罗地亚语, 不区分大小写  
cp1250_czech_cs  捷克语, 区分大小写  
cp1250_general_ci  中欧 (多语言), 不区分大小写  
cp1251 (Windows Cyrillic)  
cp1251_bin  西里尔语 (多语言), 二进制  
cp1251_bulgarian_ci  保加利亚语, 不区分大小写  
cp1251_general_ci  西里尔语 (多语言), 不区分大小写  
cp1251_general_cs  西里尔语 (多语言), 区分大小写  
cp1251_ukrainian_ci  乌克兰语, 不区分大小写  
cp1256 (Windows Arabic)  
cp1256_bin  阿拉伯语, 二进制  
cp1256_general_ci  阿拉伯语, 不区分大小写  
cp1257 (Windows Baltic)  
cp1257_bin  巴拉克语 (多语言), 二进制  
cp1257_general_ci  巴拉克语 (多语言), 不区分大小写  
cp1257_lithuanian_ci  立陶宛语, 不区分大小写  
cp850 (DOS West European)  
cp850_bin  西欧 (多语言), 二进制  
cp850_general_ci  西欧 (多语言), 不区分大小写  
cp852 (DOS Central European)  
cp852_bin  中欧 (多语言), 二进制  
cp852_general_ci  中欧 (多语言), 不区分大小写  
cp866 (DOS Russian)  
cp866_bin  俄语, 二进制  
cp866_general_ci  俄语, 不区分大小写  
cp932 (SJIS for Windows Japanese)  
cp932_bin  日语, 二进制  
cp932_japanese_ci  日语, 不区分大小写  
dec8 (DEC West European)  
dec8_bin  西欧 (多语言), 二进制  
dec8_swedish_ci  瑞典语, 不区分大小写  
euckr (EUC-KR Korean)  
euckr_bin  朝鲜语, 二进制  
euckr_korean_ci  朝鲜语, 不区分大小写  
gb2312 (GB2312 Simplified Chinese)  
gb2312_bin  简体中文, 二进制  
gb2312_chinese_ci  简体中文, 不区分大小写  
gbk (GBK Simplified Chinese)  
gbk_bin  简体中文, 二进制  
gbk_chinese_ci  简体中文, 不区分大小写  
geostd8 (GEOSTD8 Georgian)  
geostd8_bin  乔治亚语, 二进制  
geostd8_general_ci  乔治亚语, 不区分大小写  
greek (ISO 8859-7 Greek)  
greek_bin  希腊语, 二进制  
greek_general_ci  希腊语, 不区分大小写  
hebrew (ISO 8859-8 Hebrew)  
hebrew_bin  希伯来语, 二进制  
hebrew_general_ci  希伯来语, 不区分大小写  
hp8 (HP West European)  
hp8_bin  西欧 (多语言), 二进制  
hp8_english_ci  英语, 不区分大小写  
keybcs2 (DOS Kamenicky Czech-Slovak)  
keybcs2_bin  捷克斯洛伐克语, 二进制  
keybcs2_general_ci  捷克斯洛伐克语, 不区分大小写  
koi8r (KOI8-R Relcom Russian)  
koi8r_bin  俄语, 二进制  
koi8r_general_ci  俄语, 不区分大小写  
koi8u (KOI8-U Ukrainian)  
koi8u_bin  乌克兰语, 二进制  
koi8u_general_ci  乌克兰语, 不区分大小写  
latin1 (cp1252 West European)  
latin1_bin  西欧 (多语言), 二进制  
latin1_danish_ci  丹麦语, 不区分大小写  
latin1_general_ci  西欧 (多语言), 不区分大小写  
latin1_general_cs  西欧 (多语言), 区分大小写  
latin1_german1_ci  德语 (字典), 不区分大小写  
latin1_german2_ci  德语 (电话本), 不区分大小写  
latin1_spanish_ci  西班牙语, 不区分大小写  
latin1_swedish_ci  瑞典语, 不区分大小写
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息