mysql字符集 排序规则

  • 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;

原文地址:https://www.cnblogs.com/wayland3/p/11009889.html