Sql Splitter
SQL文件拆分与依赖分析工具
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:Sql Splitter。 它的用途是:SQL文件拆分与依赖分析工具 完整的 Skill 内容见:https://321skill.com/skills/sql-splitter-x-7/raw/index.md 请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。
提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。
使用示例
'请拆分这个SQL文件,其中包含多个存储过程和函数,并分析依赖关系。',它会读取文件,将每个存储过程、函数、视图等提取为独立文件,自动生成依赖图,并输出一份按依赖顺序排列的合并脚本。你还可以指定输出目录,工具会自动分类存放。
介绍
在数据库版本管理和迁移过程中,大型SQL文件往往包含多个对象(存储过程、函数、视图、触发器、表结构、索引、约束等),手动拆分和梳理依赖关系极其繁琐且容易出错。Sql Splitter 自动解析SQL文件,将每个对象提取为独立文件,并自动分析对象间的引用依赖(如存储过程调用视图、触发器引用表等),最后生成可执行的合并脚本,确保拆分后的文件能按正确顺序重新合并。
使用方式非常直接:将待拆分的SQL文件或整个目录路径传入,工具会递归扫描,识别所有DDL和DML对象,按类型分类输出,同时生成依赖关系图(JSON或图表)和合并顺序脚本。支持主流数据库方言(如MySQL、PostgreSQL、SQL Server),并可通过配置文件自定义输出格式和命名规则。
适合后端开发、运维工程师、数据库管理员等需要频繁进行数据库迁移、版本控制或重构的场景。尤其适合团队在CI/CD流程中自动拆分并管理数据库脚本,确保每次部署的脚本顺序正确,避免因依赖缺失导致失败。
建议在使用前确保SQL文件语法基本正确,避免因解析错误导致对象遗漏。对于包含循环依赖(如A调用B,B调用A)的情况,工具会标记并提示人工干预。另外,对于加密或混淆的SQL脚本,以及非标准SQL方言(如Teradata、Oracle PL/SQL中的某些专有语法),可能无法完全解析,需手动调整。
核心特点
与简单的按文件分割工具不同,Sql Splitter 能自动分析对象间的引用依赖(如存储过程调用视图、触发器更新表),并生成按依赖顺序合并的脚本,确保拆分后重新合并时不会因顺序错误而报错。
注意事项
不适用于包含循环依赖或加密/混淆的SQL脚本,且对非标准SQL方言的兼容性有限。
常见问题
支持哪些数据库类型?
主要支持MySQL、PostgreSQL、SQL Server等主流数据库,其他数据库可尝试通过自定义方言配置扩展。
如何处理循环依赖?
工具会检测循环依赖并在输出中标记,提示用户手动调整依赖顺序或拆分对象。
给 AI 助手的安装指引
如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:
请访问 https://321skill.com/skills/sql-splitter-x-7/raw/index.md 读取 Sql Splitter 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。
AI 可直接读取的原始 Markdown 地址:/skills/sql-splitter-x-7/raw/index.md(查看排版版本)