- mysql数据库 字符集
我们通常使用UTF-8类的字符集
unicode是一种统一的字符表示方式,只要涉及多国字符,通常使用unicode,比如汉字 ‘我’ unicode 表示为15105,在unicode下都是一样的,即统一‘计算机文字’,方便交流。
unicode只是统一规定字符的表示方式,并没有规定如何存储这这些字符,unicode使用固定长度的字节表示字符,导致存储时浪费空间,传输时浪费流量。
所以我们使用utf-8来存储
mysql前版本只用最多3字节存储,即utf-8方式,也叫utf-8mb3。
现在3个字节已经不够了,变为4个字节,即utf-8mb4,utf-8mb4兼容utf-8mb3。
- 排序规则
主要分为2种 utf_bin和utf_general_ci
bin 是二进制,,区分大小写。
utf8_unicode_ci和utf8_general_ci对中、英文来说没有实质的差别。
utf8_unicode_ci准确度高,但校对速度稍慢。
utf8_general_ci校对速度快,但准确度稍差。不区分大小写。(准确度够用,一般建库选择这个)。
- 建库语句:
create database xxx default character set utf8mb4 collate utf8mb4_unicode_ci;
create database xxx default character set utf8mb4 collate utf8mb4_general_ci;