字符集

一种维持二进制与字符间映射关系的集合
常见的字符集有:ASCII、ISO 8859-1、GBK、UTF-8等
Mysql的UTF-8为utf8mb3,使用1-3字节表示字符,utf8mb4使用1-4位表示字符,是正宗的UTF-8。
所以要注意客户端和服务端使用相同的字符集

比较规则

一种比较字符大小的规则,mysql支持对一个字符集有多种不同的比较规则。后缀含义为:

_ai 不区分重音
_as 区分重音
_ci 不区分大小写
_cs 区分大小写
_bin 二进制比较

修改规则

修改字符集不指定比较规则时,使用默认比较规则。
修改比较规则不指定字符集时,使用规则对应的字符集。

四个级别

mysql的字符集和比较规则有四个级别
服务器级别 -> 数据库级别 -> 表级别 -> 列级别
使用时优先列级别,如果没有指定,自动继承上个级别。