关于 database-schema-designer
为需要设计或审查关系型数据库的开发者提供技能,可从需求生成规范化结构、迁移及相关文档,并覆盖安全策略与类型生成。支持 PostgreSQL、MySQL、SQLite 和多种 ORM。
主要功能
- 01从需求设计规范化结构
- 02生成迁移与回滚方案
- 03按查询模式规划索引
- 04生成 TypeScript 与 Python 类型
- 05创建 RLS 策略与 ERD 图
适用场景
- 01为新功能设计数据表
- 02审查结构的规范化与性能
- 03规划多租户隔离
- 04生成迁移或 ERD 文档
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ borghei/ claude-skills --skill database-schema-designer安装后在 Claude Code 中输入/database-schema-designer确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/best-practices-and-troubleshooting.mdindexes-and-migrations.mdschema-design-and-security.mdscripts/erd_generator.pymigration_diffr.pyschema_validator.py详细介绍
数据库架构设计器
根据需求设计规范化的关系型数据库架构,并生成迁移、TypeScript/Python 类型、种子数据、行级安全策略、索引策略和 ERD 图。支持多租户、软删除、审计跟踪、乐观锁、多态关联和时态数据模式。支持 PostgreSQL、MySQL 和 SQLite,以及 Drizzle、Prisma、TypeORM 和 Alembic。
关键词
数据库架构、架构设计、规范化、迁移、ERD、行级安全、索引、多租户、软删除、审计跟踪、Drizzle、Prisma、PostgreSQL
核心能力
- 根据需求设计架构 — 从自然语言中提取实体/关系,应用 1NF–3NF 规范化,添加时间戳/软删除/审计/版本控制,并生成完整的 DDL。
- 迁移规划 — 支持向前和回滚迁移,针对大型表的零停机模式,以及适用于 Drizzle、Prisma、TypeORM、Alembic 和原始 SQL 的列添加/类型变更/回填。
- 索引策略 — 根据查询模式映射复合、部分、覆盖和 GIN/GiST 索引;检测并维护索引膨胀。
- 类型生成 — 根据数据库架构生成 TypeScript 接口 + Zod 架构,以及 Python 数据类 + Pydantic 模型(枚举生成为字符串联合类型)。
- 安全性 — 通过行级安全实现多租户隔离、对包含 PII 的列进行加密,以及使用变更前/后的 JSON 快照记录审计日志。
适用场景
- 为新功能设计表
- 检查现有架构中的规范化或性能问题
- 为单租户架构添加多租户支持
- 规划具有破坏性变更的架构迁移
- 为服务生成 ERD 文档
先确认
设计架构前,先确定以下输入。如果某项缺失或含糊,且会影响结果,请先询问;如果不会影响结果,则采用合理的默认值,并说明所用默认值。
- **需求或现有 DDL:**用自然语言描述实体/关系,或提供要检查的架构(设计所依据的来源)。
- **数据库引擎和 ORM:**PostgreSQL/MySQL/SQLite 以及 Drizzle/Prisma/TypeORM/Alembic(决定迁移和类型生成的输出格式)。
- **横切需求:**多租户/RLS、软删除、审计跟踪或时态数据(决定生成哪些模式和策略)。
只询问对此请求最重要的两三个输入,而非整份清单。如果用户希望立即获得结果,请直接生成,并在开头说明假设。
工具
| 工具 | 用途 | 命令 |
|---|---|---|
erd_generator.py | 解析 SQL DDL 并生成 Mermaid ER 图 | python scripts/erd_generator.py schema.sql -o erd.mmd |
migration_diffr.py | 对比两个 SQL 架构并生成迁移 ALTER 语句(含回滚) | python scripts/migration_diffr.py old.sql new.sql |
schema_validator.py | 检查 DDL 中的规范化违规、缺失索引和命名问题 | python scripts/schema_validator.py schema.sql --strict |
参考资料
加载与任务相符的参考资料 — 保持此文件精简,按需获取详细内容:
- references/schema-design-and-security.md — 从需求到架构的完整 4 步流程、完整的 Drizzle ORM 架构示例、横切关注点,以及 PostgreSQL 行级安全策略。设计新架构或添加多租户支持时阅读。
- references/indexes-and-migrations.md — 索引类型选择框架、索引反模式、零停机迁移模式(添加 NOT NULL 列、重命名列)以及 Mermaid ERD 生成。选择索引或规划安全迁移时阅读。
- references/best-practices-and-troubleshooting.md — 常见问题、最佳实践、故障排查表和成功标准。在发布架构前或诊断问题时阅读。
范围与限制
此技能涵盖:
- PostgreSQL、MySQL 和 SQLite 的关系型架构设计,包括直至 3NF 的规范化
- 为 Drizzle、Prisma、TypeORM 和 Alembic 生成迁移,并规划零停机迁移
- 行级安全(RLS)策略、索引策略和类型生成(TypeScript 和 Python)
- 跨领域模式:多租户、软删除、审计跟踪、乐观锁和时态数据
此技能不涵盖:
- NoSQL 或文档数据库设计(MongoDB、DynamoDB、Cassandra)——更全面的数据存储指导请参阅
senior-data-engineer - 超出索引建议范围的查询优化和执行计划分析——运行时性能分析请参阅
performance-profiler - 数据库基础设施配置、复制或故障转移配置——云数据库设置请参阅
senior-cloud-architect - 应用层 ORM 模式、连接池或缓存策略——后端架构决策请参阅
senior-backend
集成点
| 技能 | 集成方式 | 数据流 |
|---|---|---|
migration-architect | 移交生成的 DDL 和迁移文件,以便跨服务排序 | Schema Designer 生成迁移,Migration Architect 统筹跨服务发布顺序 |
api-design-reviewer | 架构实体直接映射到 API 资源模型和端点结构 | 架构实体及其关系用于 REST/GraphQL 资源定义和验证规则 |
senior-backend | 生成的类型和 ORM 架构可接入存储库层和服务层 | 根据架构生成的 TypeScript 接口和 Pydantic 模型成为后端的数据访问契约 |
performance-profiler | 根据实际查询执行计划验证索引策略建议 | Schema Designer 提出索引,Performance Profiler 使用 EXPLAIN ANALYZE 数据确认其有效性 |
senior-secops | RLS 策略和列加密符合安全合规要求 | 安全要求输入,RLS 策略和加密规范输出,供审计验证 |
observability-designer | 审计日志架构为运维仪表板和告警提供基础 | 审计日志表结构接入可观测性管道,用于变更跟踪和异常检测 |
评论
支持 Markdown