Skip to main content
Glama
ErikEJ
by ErikEJ

SQL 项目的静态分析规则集

构建状态 最新版本 最新版本

概述

构建时检查的 SQL 最佳实践库已实现为 120 多个 数据库代码分析规则

可以将规则作为 NuGet 包添加到基于MSBuild.Sdk.SqlProjMicrosoft.Build.Sql 的现代 SQL 数据库项目中。

您还可以下载规则并手动将其与 Visual Studio 和“经典”SQL 数据库项目一起使用,如我的博客文章中所述。

有关我们已实施的当前规则的完整列表,请参见此处

此分支还包含从TSQL-Smells分支出来的一组附加规则TSQL Smells

Related MCP server: Google Toolbox

用法

最新版本可在 NuGet 上获取

dotnet add package ErikEJ.DacFX.SqlServer.Rules
dotnet add package ErikEJ.DacFX.TSQLSmellSCA

您可以在此处阅读自述文件中有关使用和自定义规则的更多信息

命令行工具 - T-SQL 分析器 CLI

此存储库还包含一个使用规则集的 .NET 命令行工具。请参阅专用的readme 文件了解更多信息。

解决方案组织

.github - GitHub 操作

docs - 使用 DocsGenerator 单元测试通过规则检查生成的 markdown 文件

Solution Items - 与构建等相关的文件。

src

  • SqlServer.Rules - 包含从SqlCodeAnalysisRule派生的规则

  • TSQLSmellSCA - 从TSQL-Smells分叉出来的TSQL Smells规则集

test

  • SqlServer.Rules.Tests - 一些测试来演示规则的单元测试

  • TSQLSmellsSSDTTest - 一些TSQL Smells规则的单元测试

  • TestHelpers共享测试基类

tools

  • SqlAnalyzerCli - 用于针对 SQL 项目运行规则的命令行工具

  • ErikEJ.DacFX.TSQLAnalyzer - 用于针对 SQL 脚本运行规则并报告结果的库和 NuGet 包。由SqlAnalyzerCli使用。

  • SqlServer.Rules.Generator - 一个快速控制台应用程序,用于报告 SQL 项目中的所有规则。

  • SqlServer.Rules.Report - 用于评估规则和序列化结果的库。

sqlprojects

  • AW - AdventureWorks 模式 SQL 项目用于规则验证

  • TestDatabase - 一个小型 SQL 数据库项目,存在一些违反规则的情况

  • TSQLSmellsTest - 存在一些规则违规的 SQL 数据库项目

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ErikEJ/SqlServer.Rules'

If you have feedback or need assistance with the MCP directory API, please join our Discord server