文档主页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  ...  /  utf8mb4 字符集(4 字节 UTF-8 Unicode 编码)

12.9.1 utf8mb4 字符集(4 字节 UTF-8 Unicode 编码)

utf8mb4 字符集具有以下特点:

  • 支持 BMP 和增补字符。

  • 每个多字节字符最多需要四个字节。

utf8mb4utf8mb3 字符集形成对比,后者仅支持 BMP 字符,并且每个字符最多使用三个字节。

  • 对于 BMP 字符,utf8mb4utf8mb3 具有相同的存储特性:相同的代码值、相同的编码、相同的长度。

  • 对于增补字符,utf8mb4 需要四个字节来存储它,而 utf8mb3 根本无法存储该字符。将 utf8mb3 列转换为 utf8mb4 时,您无需担心转换增补字符,因为它们不存在。

utf8mb4utf8mb3 的超集,因此对于如下连接之类的操作,结果的字符集为 utf8mb4,排序规则为 utf8mb4_col

SELECT CONCAT(utf8mb3_col, utf8mb4_col);

同样,WHERE 子句中的以下比较根据 utf8mb4_col 的排序规则进行:

SELECT * FROM utf8mb3_tbl, utf8mb4_tbl
WHERE utf8mb3_tbl.utf8mb3_col = utf8mb4_tbl.utf8mb4_col;

有关数据类型存储与多字节字符集的关系的信息,请参阅 字符串类型存储需求