Statische Analyseregelsätze für SQL-Projekte
Überblick
Eine Bibliothek mit bewährten SQL-Methoden, die als mehr als 120 beim Build überprüfte Regeln zur Datenbankcodeanalyse implementiert sind.
Die Regeln können als NuGet-Pakete zu modernen SQL-Datenbankprojekten hinzugefügt werden, die entweder auf MSBuild.Sdk.SqlProj oder Microsoft.Build.Sql basieren.
Sie können die Regeln auch herunterladen und manuell mit Visual Studio und „klassischen“ SQL-Datenbankprojekten verwenden, wie in meinem Blogbeitrag hier beschrieben.
Eine vollständige Liste der aktuellen Regeln, die wir implementiert haben, finden Sie hier .
Dieser Fork enthält auch einen zusätzlichen Satz von Regeln
TSQL Smellsabgeleitet von TSQL-Smells
Related MCP server: Google Toolbox
Verwendung
Die neueste Version ist auf NuGet verfügbar
Weitere Informationen zur Verwendung und Anpassung der Regeln finden Sie in der Readme-Datei hier
Befehlszeilentool – T-SQL Analyzer CLI
Dieses Repository enthält auch ein .NET-Kommandozeilentool, das die Regelsätze verwendet. Weitere Informationen finden Sie in der entsprechenden Readme-Datei.
Lösungsorganisation
.github – GitHub-Aktionen
docs - Markdown-Dateien, die durch die Regelprüfung mit dem DocsGenerator-Unit-Test generiert wurden
Solution Items – Dateien im Zusammenhang mit dem Build usw.
src
SqlServer.Rules- Dies enthält die vonSqlCodeAnalysisRuleabgeleiteten RegelnTSQLSmellSCA- ein zusätzlicher Satz von RegelnTSQL Smellsabgeleitet von TSQL-Smells
test
SqlServer.Rules.Tests– einige Tests zur Demonstration des Unit-Tests von RegelnTSQLSmellsSSDTTest– Unit-Tests einigerTSQL Smells-RegelnTestHelpers- gemeinsam genutzte Testbasisklassen
tools
SqlAnalyzerCli– ein Befehlszeilentool zum Ausführen von Regeln für ein SQL-ProjektErikEJ.DacFX.TSQLAnalyzer– Bibliothek und NuGet-Paket zum Ausführen von Regeln für SQL-Skripte und zum Melden von Ergebnissen. Wird vonSqlAnalyzerCliverwendet.SqlServer.Rules.Generator– eine schnelle Konsolenanwendung zum Berichten aller Regeln in einem SQL-Projekt.SqlServer.Rules.Report– Bibliothek zum Auswerten einer Regel und Serialisieren des Ergebnisses.
sqlprojects
AW– AdventureWorks-Schema-SQL-Projekt zur RegelvalidierungTestDatabase- ein kleines SQL-Datenbankprojekt mit einigen RegelverletzungenTSQLSmellsTest– ein SQL-Datenbankprojekt mit einigen Regelverletzungen