SQL Server 2012 : Extraits de code T-SQL

Les extraits de code dans SQL Server 2012 sont principalement des modèles qui peuvent accélérer la création d'instructions de base de données.

Saleem Hakani

Imaginez une série de commandes que vous utilisez toujours lors de la création d'un déclencheur, Table, procédure stockée ou même une instruction Select. Maintenant, imaginez avoir toutes ces commandes établies et prêtes à l'emploi. Vous pouvez réduire considérablement la quantité de temps et de code, que vous devez écrire en utilisant les nouveaux extraits de code T-SQL dans SQL Server 2012.

Extraits de T-SQL vous permettent rapidement construire T-SQL instructions sans avoir à se rappeler les commandes ou leur syntaxe. Vous pouvez utiliser cette fonctionnalité pour aider à réduire les temps de développement et d'accroître la productivité de vos développeurs et administrateurs.

Modèles d'extrait de code dans SQL Server 2012 sont basés sur XML avec les valeurs et les champs prédéfinis. Lorsque vous utilisez un extrait de code T-SQL, ces champs sont mis en surbrillance et vous pouvez tab chaque champ et modifiez les valeurs comme l'exige.

Les extraits sont classés pour faciliter l'utilisation. Vous pouvez afficher et sélectionner des extraits divers, basées sur la catégorie. SQL Server 2012 introduit trois types d'extraits :

  • **Par défaut les extraits (ou extraits de l'Expansion) :**Il s'agit de modèles de code pour différentes commandes T-SQL, que vous pouvez rapidement insérer dans votre code T-SQL lors de la création de tables, procédures stockées, déclencheurs et ainsi de suite.
  • **Entourent les extraits :**Il s'agit de modèles de code qu'aide vous implémentez le code construit tel que commencer fin, si, si, et ainsi de suite.
  • **Extraits personnalisés :**Vous pouvez créer vos propres extraits personnalisés qui apparaîtront avec le menu de l'extrait de code.

Créer des extraits de la coutume

Regardons comment créer un extrait de code personnalisé et l'ajouter au menu de l'extrait de code. Création et utilisation d'un extrait de code sont un processus en trois étapes :

  1. Créer un extrait à l'aide de XML
  2. S'inscrire à l'extrait de code dans SQL Server Management Studio (SSMS)
  3. Invoquer l'extrait de code lors de l'utilisation de l'éditeur de requête

Par défaut, tous les extraits de T-SQL sont stockés dans le dossier suivant et enregistrées en tant que fichiers .snippet :
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\SQL\Snippets\1033

Étape 1. Créer un fichier d'extrait de code T-SQL avec XML
Voici un extrait de code que vous pouvez utiliser pour écrire une instruction Select pour n'importe quelle table (elle aussi vous permettra utiliser une instruction CASE pour une vérification de l'égalité sur une colonne) :

CASE_END.SNIPPET File <?xml version="1.0" encoding="utf-8" ?> <CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title>Case-End</Title> <Description> Insert Case...End Construct. </Description> <Author> Saleem Hakani (Microsoft Corporation) </Author> <SnippetTypes> <SnippetType>Expansion</SnippetType> </SnippetTypes> </Header> <Snippet> <Code Language="SQL"> <![CDATA[ Select <Column_Name1>, <Column_Name2>, <Column_Name3>, <Column_Name4>= CASE <Column_Name4> WHEN '<value>' THEN '<Result>' WHEN '<value>' THEN '<Result>' WHEN '<value>' THEN '<Result>' WHEN '<value>' THEN '<Result>' ELSE 'Value not found' END, <Column_Name5>, <Column_Name6> From <Table_Name> Go ]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>

Étape 2. S'inscrire à l'extrait de code avec SSMS

Une fois que vous avez créé ce fichier, utilisez le gestionnaire des extraits de Code pour enregistrer l'extrait avec SSMS. Vous pouvez ajouter un nouveau dossier basé sur la catégorie de l'extrait de code ou importer des extraits dans le dossier Mes extraits de Code.

Pour ajouter un dossier extrait :

  1. Lancement de SSMS
  2. Sélectionnez les éléments de menu Outils, puis cliquez sur Gestionnaire des extraits de Code, qui lance le gestionnaire des extraits de
  3. Cliquez sur le « Ajouter » bouton
  4. Naviguez jusqu'au dossier contenant les CASE_END.Fichier extrait, puis cliquez sur le bouton Sélectionner le dossier

L'étape suivante consiste à importer l'extrait dans SSMS :

  1. Lancement de SSMS
  2. Sélectionnez les éléments de menu Outils, puis cliquez sur Gestionnaire des extraits de Code
  3. Cliquez sur le bouton Importer en bas
  4. Naviguez jusqu'au dossier contenant le fichier CASE_END.snippet et sélectionnez le fichier CASE_End.snippet, puis cliquez sur le bouton Ouvrir

Étape 3. Invoquer ou insérer un extrait de code T-SQL dans l'éditeur de requête

Vous avez maintenant un extrait appelé CASE_END que vous pouvez appeler à partir de l'éditeur de requête avec la touche de raccourci en appuyant sur CTRL + K + X. Sélectionnez ensuite le dossier de la catégorie dans laquelle vous avez stockées à l'extrait de code. Vous pouvait également cliquez sur le menu contextuel dans l'éditeur de requête et sélectionnez Insert Snippet.

Vous pouvez également appeler un extrait en cliquant sur le menu contextuel dans l'éditeur de requête. Ceci vous présentera avec diverses Options de l'extrait de code.

À l'aide de ces étapes, vous pouvez créer des extraits de code T-SQL et les enregistrer avec SSMS. Vous pouvez également créer des complexes extraits de diverses tâches régulières et rendre votre vie gestion beaucoup plus facile de SQL Server.

Solutions de l'extrait de code

Imaginez que vous êtes un développeur ou un DBA, responsable de la sécurité de vos serveurs. Vous devrez peut-être 500 connexions dans SQL Server, mais vous ne connaissez pas les rôles de niveau serveur à qui ces 500 connexions sont affectées. Si vous deviez vérifier individuellement les propriétés de chaque connexion, il pourrait prendre des heures ou même jours. Ayant un moyen automatisé de rapidement vérifier toutes les connexions de niveau serveur serait de réduire le temps au code, ainsi qu'augmenter la précision du code et de développeur et de la productivité des DBA.

Voici un extrait qui vous permet de chercher rapidement au niveau serveur connexions et leurs rôles de niveau serveur et les autorisations. Cette liste d'extrait SecuritySPY identifie les connexions de niveau serveur et les rôles auxquels ils sont affectés :

<?xml version="1.0" encoding="utf-8" ?> <CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title>SQL_SecuritySPY - By Saleem Hakani (Microsoft Corporation)</Title> <Description> Shortcut for checking SQL Server Server Role Permissions </Description> <Author> Saleem Hakani (Microsoft Corporation) </Author> <SnippetTypes> <SnippetType>Expansion</SnippetType> </SnippetTypes> </Header> <Snippet> <Code Language="SQL"> <![CDATA[ --Author: Saleem Hakani (Microsoft Corporation) --Website: Http://sqlcommunity.com Select 'Login Name'= Substring(upper(SUSER_SNAME(SID)),1,40), 'Login Create Date'=Convert(Varchar(24),CreateDate), 'System Admin' = Case SysAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Security Admin' = Case SecurityAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Server Admin' = Case ServerAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Setup Admin' = Case SetupAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Process Admin' = Case ProcessAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Disk Admin' = Case DiskAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Database Creator' = Case DBCreator When 1 then 'YES (VERIFY)' When 0 then 'NO' End from Master.Sys.SysLogins order by 3 desc Go ]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>

Vous avez maintenant un extrait appelé SecuritySPY. Vous pouvez appeler cela avec la touche de raccourci de l'éditeur de requête, comme expliqué précédemment. Vous pouvez également cliquez sur le menu contextuel dans l'éditeur de requête et sélectionnez Insert Snippet.

Création et utilisation d'extraits peuvent simplifier vos tâches de gestion SQL Server. Ayant une poignée de commandes prédéfinis à votre disposition vous permet d'avoir à faire la même chose encore et encore.

Greg Steen

Saleem Hakani est des principaux architectes de Microsoft avec plus de 18 ans d'expérience. Il a travaillé avec SQL Server depuis 1992 et a travaillé sur nombreux services à grande échelle de Microsoft comme ingénieur et architecte au cours des sept dernières années, y compris Hotmail, Bing et MSN. Hakani mène la communauté SQL Server pour les employés de Microsoft et est une présentatrice de technique pour différents événements de Microsoft, y compris TechReady, SQLFEST, SQL-école et SQLPASS.

Contenu connexe