Agent Skills
返回列表
🤖

SQL 数据库助手

AI Agent 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/sql-database-assistant 到当前 AI 助手。

技能介绍

要解决的问题

日常开发里,数据库相关的工作往往散落在各种「不紧急但重要」的角落:一个慢查询拖慢了列表页,手写 JOIN 越改越乱,加字段时忘了回滚方案,ORM 生成的 SQL 撞上方言差异直接报错。这些问题单个看都不复杂,但组合起来足够消耗大量调试时间。

技能如何工作

这个技能定位于数据库设计的「运营层」:不负责 ERD 建模,而是覆盖写查询、调性能、生成迁移的日常循环。

  • 自然语言转 SQL:按「实体→关系→过滤→聚合→排序」的顺序拆解需求,映射到 JOIN、WHERE、GROUP BY、ORDER BY,并提供 Top-N、运行总额、缺口检测、UPSERT 等常用模板
  • Schema 探索:通过内省查询列出表结构、外键、表大小,并用 scripts/schema_explorer.py 生成 Markdown 或 JSON 文档
  • 查询优化:scripts/query_optimizer.py 做静态分析;优化流程先跑 EXPLAIN ANALYZE,定位高成本节点,检查缺失索引与统计信息误差,再按「高选择性列在前」等原则给出复合索引建议
  • 迁移生成:scripts/migration_generator.py 从变更描述生成模板,内置加列、重命名列的 expand-contract、批量回填与回滚策略
  • ORM 集成:覆盖 Prisma、Drizzle、TypeORM、SQLAlchemy 的查询写法与迁移命令,并给出 raw SQL 逃生舱
  • 多方言支持:PostgreSQL、MySQL、SQLite、SQL Server 的 UPSERT、布尔、JSON、窗口函数差异对照,配合参数化查询与标识符引用的兼容建议

适用边界与注意点

工具给出的索引建议与重写模式是启发式的,实际效果仍需用 EXPLAIN 结果验证。迁移脚本必须测试回滚路径;死锁预防依赖锁顺序一致性,不是单靠工具能解决的。备份策略建议(每日 7 天、每周 4 周、每月 12 个月)需要结合自身数据量调整。反模式表里列出的 SELECT *、外键缺索引、金额用 FLOAT 等问题,工具只能提示,代码评审仍要人工把关。

使用场景

  • 慢查询排查:拿到 `EXPLAIN ANALYZE` 结果后定位高成本节点,判断缺失索引与统计信息误差
  • 在线文档列出一批订单,需要翻译成窗口函数 Top-N 或累计求和的 SQL,并确认方言兼容性
  • 给已有库生成迁移脚本:为加列、重命名、建索引写出 expand-contract 的 up/down 方案与回滚计划
  • ORM 查询撞到 N+1:在 Prisma、Drizzle、TypeORM 或 SQLAlchemy 里改用批量加载或显式 JOIN

适合人员

  • 后端工程师:需要把需求翻译成可执行的 SQL,并在多种数据库方言间保持一致写法
  • 数据库管理员:负责生产库的结构变更,要求零停机迁移与可验证的回滚预案
  • 全栈开发者:在 Prisma、Drizzle 等 ORM 中写查询,遇到 N+1 或原生 SQL 逃生舱问题
  • 性能工程师:针对慢查询做索引推荐与查询重写,降低高并发场景的资源消耗