SQLプロジェクトの静的解析ルールセット
概要
ビルド時にチェックされる 120 を超える データベース コード分析ルールとして実装された SQL ベスト プラクティスのライブラリ。
ルールは、 MSBuild.Sdk.SqlProjまたはMicrosoft.Build.Sqlに基づく最新の SQL データベース プロジェクトに NuGet パッケージとして追加できます。
私のブログ記事で説明されているように、ルールをダウンロードして Visual Studio および「クラシック」SQL データベース プロジェクトで手動で使用することもできます。
現在実装されているルールの完全なリストについては、ここを参照してください。
このフォークには、 TSQL-Smellsからフォークされた
TSQL Smellsの追加ルールセットも含まれています。
Related MCP server: Google Toolbox
使用法
最新バージョンはNuGetで入手可能です
ルールの使用とカスタマイズの詳細については、こちらのReadmeをご覧ください。
コマンドラインツール - T-SQL Analyzer CLI
このリポジトリには、ルールセットを使用する.NETコマンドラインツールも含まれています。詳細は専用のreadmeファイルをご覧ください。
ソリューション組織
.github - GitHubアクション
docs - DocsGenerator ユニットテストによるルール検査から生成されたマークダウンファイル
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で使用されますSqlAnalyzerCliSqlServer.Rules.Generator- SQL プロジェクト内のすべてのルールを報告するための簡単なコンソール アプリ。SqlServer.Rules.Report- ルールを評価し、結果をシリアル化するためのライブラリ。
sqlprojects
AW- ルール検証のためのAdventureWorksスキーマSQLプロジェクトTestDatabase- いくつかのルール違反がある小さなSQLデータベースプロジェクトTSQLSmellsTest- いくつかのルール違反があるSQLデータベースプロジェクト