用途:分析数据库 schema 的结构问题,输出重构后的完整 schema,并生成安全迁移,尽量保留现有数据。
主要能力:审计规范化问题(1NF/2NF/3NF 违规、逗号分隔或 JSON 数组存储的多对多关系、导致更新异常的反规范化字段);检查关系完整性(缺失外键、可空性、级联行为、循环关系);检查索引(外键缺索引、WHERE/ORDER BY/JOIN 列缺索引、冗余索引、缺失唯一约束);命名与类型问题(大小写不一致、模糊列名、INT 与 BIGINT、用 FLOAT 存金额、字符串存时间)。
使用方式:接受多种输入,包括 Prisma schema 文件、原始 SQL 的 CREATE TABLE、ORM 模型定义(SQLAlchemy、Django、ActiveRecord、TypeORM)或表字段的文字描述;需说明数据库引擎、所用 ORM、大致数据量和已知痛点。输出重构后的完整 schema(含新表、显式级联外键、索引及说明注释),并生成分步迁移:先加新列/表,再回填数据,然后加约束与索引,最后在验证后单独删除废弃列/表。
限制:迁移需人工复核,删除步骤被有意分离;数据库是否支持事务性 DDL 需特别注意(PostgreSQL 支持,MySQL 不支持);索引可用 CONCURRENTLY 或 ALGORITHM=INPLACE 时优先使用。技能还提供变更摘要,并可选做查询审计、种子数据更新、ORM 模型更新与回滚迁移。部分工具细节路径如 references/orm-migrations.md 与 references/index-strategy.md 被提及。