关于 SqlServer.Rules
SqlServer.Rules 是面向 SQL Database 项目的 T-SQL 静态分析规则库,适用于编写和构建 SQL 项目的开发者。它提供 140 多项设计、命名和性能规则,并可通过 CLI、IDE 扩展及构建过程呈现分析结果。
主要功能
- 01提供 140 多项数据库代码分析规则
- 02在 SQL 项目构建时检查问题
- 03分析 SQL 脚本与数据库项目
- 04支持 XML 和 JSON 输出
- 05在编辑器中提供实时诊断
适用场景
- 01在构建时检查 SQL 项目代码
- 02分析 T-SQL 脚本并导出报告
- 03在 Visual Studio、SSMS 或 VS Code 中检查 SQL
MCP 相关
仓库包含可用作 MCP 服务的 T-SQL Analyzer CLI,可供 VS Code 和 Visual Studio 中的 GitHub Copilot 使用,提供 SQL 代码分析反馈。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
SQL 项目的静态分析规则集
概述
一个包含 SQL 最佳实践的库,提供 140 多条数据库代码分析规则,并在构建时进行检查。
这些规则可以作为 NuGet 包添加到 SQL Database 项目中:
- 现代 SDK 风格项目:MSBuild.Sdk.SqlProj 和 Microsoft.Build.Sql
- 经典 .sqlproj:旧版 SSDT 项目(需要 Visual Studio 2017 或更高版本)
如需查看当前已实现规则的完整列表,请参阅此处。
组件堆栈
flowchart TD
VS["Visual Studio T-SQL Analyzer<br/>Live feedback in Visual Studio"]
SSMS["SSMS T-SQL Analyzer<br/>Live feedback in SQL Server Management Studio"]
VSC["VS Code T-SQL Analyzer<br/>Live feedback in Visual Studio Code"]
CLI["T-SQL Analyzer CLI<br/>tsqlanalyze command line tool"]
MBSQL["SQL Database Projects<br/>Build-time SQL Project analysis"]
RULES["SqlServer.Rules<br/>(NuGet package)<br/>Static SQL code analysis rules"]
MCP["MCP Server<br/>AI Agent integration for SQL code analysis rules"]
VS --> CLI
SSMS --> CLI
VSC --> CLI
CLI --> RULES
MBSQL --> RULES
MCP --> CLI
用法
最新版本可在 NuGet 上获取
dotnet add package ErikEJ.DacFX.SqlServer.Rules
现代 SDK 风格项目
这些规则以 NuGet 包的形式提供,可添加到 SQL Database 项目中。规则会在构建期间运行,并在“错误列表”窗口中报告问题。
有关如何使用和自定义规则的更多信息,请参阅此处的文档
经典 .sqlproj 项目
你可以下载这些规则,并在 Visual Studio 和“经典”SQL Database 项目中手动使用,具体说明见我的博客文章。
命令行工具 - T-SQL Analyzer CLI
此代码库还包含一个使用该规则集的 .NET 命令行工具。
你可以用它分析 SQL 脚本或 SQL Database 项目,并以多种格式输出结果,包括 XML 和 JSON。
你也可以在 VS Code 和 Visual Studio 中将此工具用作 MCP 服务,搭配 GitHub Copilot 使用,从而通过 GitHub Copilot Chat 获取 SQL 代码反馈。
T-SQL Analyzer MCP 服务支持在多种开发环境中快速安装。请在下方选择首选客户端,以便轻松完成设置:
| 客户端 | 一键安装 | MCP 指南 |
|---|---|---|
| VS Code | VS Code MCP 官方指南 | |
| Visual Studio | Visual Studio MCP 官方指南 |
请参阅专门的自述文件了解更多信息。
Visual Studio 扩展 - T-SQL Analyzer
此存储库还包含一个使用该规则集的 Visual Studio 扩展。
在 Visual Studio 中对 SQL 脚本进行实时分析,并在“错误列表”窗口中查看结果。
从 Visual Studio Marketplace 下载此扩展, 或获取 CI 构建
更多信息,请参阅专门的 自述文件
SQL Server Management Studio 扩展 - T-SQL Analyzer
此存储库还包含一个使用该规则集的 SQL Server Management Studio 扩展。
在 SQL Server Management Studio 中对 SQL 脚本进行实时分析,并在“错误列表”窗口中查看结果。
从 SSMS VSIX Gallery 下载此扩展的最新构建
更多信息,请参阅专门的 自述文件
VS Code 扩展 - T-SQL Analyzer
此存储库还包含一个使用该规则集的 VS Code 扩展。
在 Visual Studio Code 中输入 .sql 文件时,即可实时看到波浪线标记和诊断信息——无需构建步骤。
更多信息,请参阅专门的 自述文件
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。