mcpField
D
database-schema-designer

database-schema-designer

github.com/borghei数据与数据库1.0k169 次安装1 周前更新
代码仓库

关于 database-schema-designer

为需要设计或审查关系型数据库的开发者提供技能,可从需求生成规范化结构、迁移及相关文档,并覆盖安全策略与类型生成。支持 PostgreSQL、MySQL、SQLite 和多种 ORM。

主要功能

  1. 01从需求设计规范化结构
  2. 02生成迁移与回滚方案
  3. 03按查询模式规划索引
  4. 04生成 TypeScript 与 Python 类型
  5. 05创建 RLS 策略与 ERD 图

适用场景

  1. 01为新功能设计数据表
  2. 02审查结构的规范化与性能
  3. 03规划多租户隔离
  4. 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.md
indexes-and-migrations.md
schema-design-and-security.md
scripts/
erd_generator.py
migration_diffr.py
schema_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

参考资料

加载与任务相符的参考资料 — 保持此文件精简,按需获取详细内容:

范围与限制

此技能涵盖:

  • 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-secopsRLS 策略和列加密符合安全合规要求安全要求输入,RLS 策略和加密规范输出,供审计验证
observability-designer审计日志架构为运维仪表板和告警提供基础审计日志表结构接入可观测性管道,用于变更跟踪和异常检测

评论

支持 Markdown