Install
openclaw skills install @fatonionlee/mysql-schema-best-practice-generatoropenclaw skills install @fatonionlee/mysql-schema-best-practice-generator用途:根据用户的业务表需求,生成符合 MySQL 8.0 最佳实践的建表DDL、索引与约束策略、字符集/排序规则、安全与性能设置,并提供审校清单与风险提示。支持对现有DDL进行审查与修正建议。
输入格式:
输出格式:
实施步骤与逻辑:
预设全局最佳实践(MySQL 8.0):
模式A生成流程: a. 规范化输入:补全缺失的 engine、charset、collation、行格式、审计列与主键策略。 b. 字段映射与类型选型:根据业务类型/范围推导合适的 MySQL 类型与长度;金额映射为DECIMAL;布尔映射为TINYINT(1)。 c. 主键策略:优先BIGINT UNSIGNED AUTO_INCREMENT;如用户指定UUID则使用 BINARY(16) 并提供插入示例(通过UUID_TO_BIN/ BIN_TO_UUID,v7优先)。 d. 约束与默认值:所有必要列NOT NULL,显式默认值;时间列默认CURRENT_TIMESTAMP并配置ON UPDATE。 e. 索引设计:
模式B审查流程: a. 解析DDL:检查是否使用InnoDB、字符集/排序、是否存在隐式NULL、缺失主键、未命名约束/索引。 b. 类型与长度:识别过大类型(如VARCHAR(1000)+频繁索引)、不合理FLOAT金额、TEXT/JSON滥用、低选择性列索引。 c. 时间与时区:DATETIME/TIMESTAMP混用问题、默认值不一致、ON UPDATE 缺失。 d. 索引策略:重复/冗余索引、未覆盖查询关键列、复合索引顺序不当、唯一约束缺失。 e. 外键与分区:外键命名/索引缺失、分区键错误或与主键不一致。 f. 命名规范:是否小写snake_case、索引/约束命名是否符合前缀规范。 g. 安全与性能:未设置行格式、缺少审计列、过多触发器、未设置合适的默认值、潜在锁升级风险。 h. 给出修复建议与可自动修复的 fixed_ddl。
错误处理:
MCP工具使用:本Skill以静态规范生成与审校为主,不依赖外部MCP工具;若运行环境提供SQL格式化MCP工具(例如 sql-formatter),可选执行:
返回要求:严格使用上述输出格式,DDL应可在 MySQL 8.0+ 执行,避免使用已废弃语法。