[toc]
mysql字符集
1.字符集定义
字符集(charset):是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称, 包括各国家文字、标点符号、图形符号、数字等
2.mysql数据库的字符集
1.字符集 charset
2.校对规则 collation
3.mysql中常见的字符集
ASCII字符集
- 1.一共128个字符,包括空格、标点符号、数字、大小写字母和一些不可见字符
- 2.每个字符使用一个字节编码--一个字节是8位,一共有256个编码方式足以承担128个
ISO 8859-1字符集-latin1
- 1.一共256个字符,足以用一个字节标识。
- 2.共收录256个字符,是在ASCII字符集的基础上又扩充了128个西欧常用字符
GB2312字符集
- 1.收录了汉字以及拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母
- 2.同时这种字符集又兼容ASCII字符集
- 3.如果该字符在ASCII字符集中,则采用1字节编码。否则采用2字节编码。
- 4.类似这种一个字符需要的字节数不同称为边长编码
GBK字符集
- GBK字符集只是在收录字符范围上对GB2312字符集作了扩充,编码方式上兼容GB2312
utf8字符集
-
1.收录地球上能想到的所有字符,而且还在不断扩充。这种字符集兼容ASCII字符集,采用变长编码方式,编码一个字符需要使用1~4个字节
-
2.兼容ASCII
-
3.utf8只是Unicode字符集的一种编码方案,Unicode字符集可以采用utf8、utf16、utf32这几种编码方案,utf8使用1~4个字节编码一个字符,utf16使用2个或4个字节编码一个字符,utf32使用4个字节编码一个字符。
4.mysql常见校对规则
1.ci:大小写不敏感
2.cs或bin:大小写敏感
示例
create database DB1 charset utf8 collate=utf8_general_ci