utf8mb4 的区别在于它扩展了 UTF-8 的编码空间,可以支持包括 emoji 表情等在内的更多字符。相比 utf8 编码,utf8mb4 编码要求更多的存储空间,但是在实际应用中,utf8mb4 能够更好地兼容各种 unicode 编码方案,并且支持更加丰富的字符表现形式。
-- 创建 utf8mb4 编码的数据库 CREATE DATABASE my_db CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; -- 创建 utf8mb4 编码的表 CREATE TABLE my_table ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(255) COLLATE utf8mb4_general_ci NOT NULL, content TEXT COLLATE utf8mb4_general_ci NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
由于 utf8mb4 编码的引入,使得 MySQL 数据库更加适用于多语言字符的存储和操作。同时,MySQL 也在后续的版本中继续完善和优化 utf8mb4 相关的功能,使得它更加成熟稳定。