Encore une autre règle pour SQL Server DataTools
Aperçu
Juste ce qu'il dit sur la boîte: une bibliothèque des meilleures pratiques SQL en tant que règles d'analyse de code de base de données étendues vérifiées à la build. Les règles peuvent être installées localement ainsi que sur le serveur de construction.
Pour une liste complète des règles actuelles que nous avons implémentées, voir ici. Par exemple le code, voir ici
Organisation
- SqlServer.DAC - Ce qui tient les visiteurs et autres code utilitaires
- SqlServer.Rules - Cela contient les règles dérivées de
SqlCodeAnalysisRule - Sqlserver.rules.report - bibliothèque pour évaluer une règle et sérialiser le résultat.
- SQLServer.rules.Generator - Une application de console rapide pour signaler toutes les règles d'un projet SQL.
- SQLServer.rules.SolutionGenerator - Un rapide pour faire une construction et évaluer les règles sur une solution SQL. Ra également les règles violées dans un rapport HTML.
- TestDatabase - une petite solution SQL pour tester
Débogage / test
- Assurez-vous que
SqlServer.Rules.SolutionGenerator est "Défini en tant que projet de démarrage" - Définir les arguments de ligne de commande:
- Ouvrez les propriétés du projet
SqlServer.Rules.SolutionGenerator - Sélectionnez l'onglet Debug
- Entrez l'un des scénarios suivants:
- Pour déboguer le harnais de test, DB:
--build --reportDirectory ".Files" --solution "......TestDatabaseTestDatabase.sln" - Pour déboguer un projet SQL:
--build --reportDirectory ".Files" --solution "{path}.sln"
- Ajoutez un point de rupture dans le projet
SqlServer.Rules dans l'une des règles que vous souhaitez déboguer
Remarque: si vous devez déboguer le chargement de la bibliothèque, voir ici
Installer
Une installation. Ou vous pouvez éventuellement suivre ces instructions:
Suivez les instructions sur la règle d'analyse de code statique MS INSTRACT.
La version doit être installée sur le modèle de modèle %VSBIN%Common7IDEExtensionsMicrosoftSQLDBDAC{SqlEngine}Extensions donc pour Visual Studio 2017 avec DAC version 150, le chemin pourrait être
C:Program Files (x86)Microsoft Visual Studio 2017 EnterpriseCommon7IDEExtensionsMicrosoftSQLDBDAC 150 ExtensionsSqlServer.Rules
Notes:
- Vous devrez copier les binaires dans chaque permutation de la version Visual Studio et de la version DAC pour laquelle vous souhaitez utiliser les règles.
- Lorsque l'analyse de code est activée et a compilé le projet Visual Studio place un verrouillage dur sur les binaires de règles. Pour les mettre à jour ou les supprimer, vous devrez fermer Visual Studio.
Configuration du projet
- Une fois les règles compilées et installées dans le répertoire approprié, vous pouvez ouvrir votre projet SSDT et activer l'analyse de code en suivant ces instructions: https://docs.microsoft.com/en-us/sql/ssdt/database-project-settings?view=sql-server-ver15#bkmk_code_analysismysis
- Une fois que l'analyse du code est activée, effectuez une reconstruction. Toutes les règles qui sont enfouies apparaîtront comme des avertissements de construction.
- Vous pouvez double-cliquer sur n'importe lequel des avertissements à prendre à l'emplacement du code où la règle a été enfreinte.
- Vous pouvez également éventuellement:
- Activer / désactiver les règles.
- Définissez certaines règles en tant qu'erreurs afin qu'ils lancent réellement les erreurs de construction.
- Ignorez les règles dans les fichiers SQL. Voir