NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
``` ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='商户合同表'; ``` 把表存储引擎设为 InnoDB,字符集用 utf8mb4,排序规则选 utf8mb4_0900_ai_ci,并给表加上中文注释“商户合同表”。 | 设置项 | 值 | 作用与注意点 | |---|---|---| | ENGINE | InnoDB | 默认事务型引擎,支持行锁、外键、崩溃恢复、MVCC;若省略可能退化为 MyISAM(老版本)。 | | DEFAULT CHARSET | utf8mb4 | 真正的 UTF-8,可存 4 字节 Emoji、生僻汉字;与旧 utf8(3 字节)区别大,避免乱码。 | | COLLATE | utf8mb4_0900_ai_ci | MySQL 8.0 默认排序规则:<br>• 0900 基于 Unicode 9.0;<br>• ai(accent insensitive)重音不敏感,é = e;<br>• ci(case insensitive)大小写不敏感,A = a;<br>• 排序速度比早期 utf8mb4_general_ci 快,对比结果更准确。 | | COMMENT | '商户合同表' | 元数据注释,`SHOW CREATE TABLE` 或 `information_schema.TABLES` 可见,方便 DBA/开发快速了解业务含义;部分代码生成工具可读取生成文档。 | 组合效果 1. 数据文件按 InnoDB 聚簇索引组织,支持事务、行锁、外键。 2. 所有字符列默认继承表级 charset & collate,省去逐列声明;后期如需区分大小写,可单独给某列指定 `COLLATE utf8mb4_0900_as_cs`。 3. 迁移或复制到旧版本时,若目标库 < 8.0,需把 collate 降级为 `utf8mb4_general_ci`,否则报错 unknown collation。