Agent Skills
返回列表
SQL 语法检查助手

SQL 语法检查助手

开发编程 更新于 2026.08.29

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

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_0a862de7/sqlfluff-check。

技能介绍

先解决的问题

手写 SQL 时,语法问题往往藏在迁移脚本、批量 INSERT 或 psql 变量里。等到 CI 或数据库报错时,定位成本会变高。常见情况包括:外键约束里逗号放错、VALUES 列表长度与列数不匹配、ON CONFLICT 指定的列缺少唯一约束,以及 psql 变量引用格式不正确。这些错误不一定影响业务逻辑,但会阻塞执行。

技能如何工作

sqlfluff-check 把 SQLFluff 的检查和修复能力带进开发流程,适合在提交 SQL 文件、验证数据库迁移或做 SQL lint 时使用。触发条件包括:

  • 检查 SQL 文件语法
  • 修复 SQL 语法错误
  • 执行 SQL lint 检查
  • 验证数据库迁移文件

使用时可以走两种路径:先对 SQL 文件做只读检查,确认问题后再执行自动修复。项目根目录需要提供 .sqlfluff 配置文件,用来定义方言、规则和例外。

它能处理的典型问题包括:

  • 标点符号错误:例如外键约束中逗号位置错误。
  • VALUES 列表长度不一致:例如 INSERT 语句中列数与值数不匹配。
  • ON CONFLICT 规范不匹配:例如指定列没有唯一约束。
  • psql 变量语法错误:例如变量引用格式不正确。

修复完成后,可以重新运行检查,确认剩余问题是否已收敛。

适用边界

它主要面向语法、lint 和可自动修复的格式问题,不做数据库连接验证,也不保证执行结果一定符合业务预期。涉及复杂迁移顺序、权限或表结构依赖时,仍需要结合数据库状态人工确认。

使用场景

  • 提交前对 SQL 迁移文件做语法 lint,确认外键约束和 VALUES 列表写法可执行。
  • 发现 INSERT 语句列数与值数不一致时,运行自动修复前先做只读检查确认差异。
  • 在包含 psql 变量或 ON CONFLICT 的脚本中,验证引用格式并修复指定列缺少唯一约束的问题。
  • 项目接入 SQLFluff 后,检查 .sqlfluff 配置是否覆盖方言、规则和例外。

适合人员

  • 数据库工程师:提交迁移 SQL 前需要快速定位逗号、VALUES 列表等语法问题。
  • 后端开发者:写 INSERT 或 ON CONFLICT 语句时希望先用 lint 检查再自动修复。
  • 数据平台运维:批量更新 SQL 脚本前需要确认 psql 变量和规则配置是否可用。
  • 负责 CI 的工程师:想在流水线前对 SQL 文件做只读校验,减少数据库报错返工。