Création de modèles personnalisés

SQL Server Management Studio est fourni avec des modèles pour de nombreuses tâches communes, mais le réel intérêt des modèles réside dans la possibilité de créer un modèle personnalisé pour les scripts complexes qui doivent être créés souvent. Au cours de cet exercice pratique, vous allez créer un script simple avec quelques paramètres, mais les modèles peuvent être utiles également pour les scripts longs et répétitifs.

Utilisation de modèles personnalisés

Pour créer un modèle personnalisé

  1. Dans l'Explorateur de modèles, développez Modèles SQL Server, cliquez avec le bouton droit sur Procédure stockée, pointez sur Nouveau et cliquez sur Dossier.

  2. Tapez Personnalisé comme nom de dossier de modèles et appuyez sur Entrée.

  3. Cliquez avec le bouton droit sur Personnalisé, pointez sur Nouveau et cliquez sur Modèle.

  4. Tapez WorkOrdersProc (ProcBonTravail) comme nom de dossier de modèles et appuyez sur Entrée.

  5. Cliquez avec le bouton droit sur WorkOrdersProc, puis cliquez sur Modifier.

  6. Dans la boîte de dialogue Se connecter au moteur de base de données, vérifiez les informations de connexion, puis cliquez sur Se connecter.

  7. Dans l'Éditeur de requête, tapez le script suivant pour créer une procédure stockée qui recherche les bons d'une pièce en particulier, dans le cas présent la lame. (Vous pouvez copier et coller le code à partir de la fenêtre du didacticiel.)

    USE AdventureWorks2008R2;
    GO
    IF EXISTS (
    SELECT * 
       FROM INFORMATION_SCHEMA.ROUTINES 
       WHERE SPECIFIC_NAME = 'WorkOrdersForBlade')
       DROP PROCEDURE dbo.WorkOrdersForBlade;
    GO
    CREATE PROCEDURE dbo.WorkOrdersForBlade
    AS
    SELECT Name, WorkOrderID 
    FROM Production.WorkOrder AS WO
    JOIN Production.Product AS Prod
    ON WO.ProductID = Prod.ProductID
    WHERE Name = 'Blade';
    GO
    
  8. Appuyez sur F5 pour exécuter ce script et créer la procédure WorkOrdersForBlade.

  9. Dans l'Explorateur d'objets, cliquez avec le bouton droit sur votre serveur et choisissez Nouvelle requête. Une nouvelle fenêtre de l'Éditeur de requête s'ouvre.

  10. Dans l'Éditeur de requête, tapez EXECUTE dbo.WorkOrdersForBlade et appuyez sur F5 pour exécuter la requête. Vérifiez si le volet Résultats affiche la liste des bons de travaux pour les lames.

  11. Modifiez le script du modèle (le script de l'étape 7) en remplaçant le nom du produit Blade (Lame) par le paramètre <product_name, nvarchar(50), name>, en quatre endroits.

    Notes

    Les paramètres nécessitent trois éléments : le nom du paramètre à remplacer, le type de données du paramètre et une valeur par défaut pour le paramètre.

  12. Le script doit à présent ressembler à ce qui suit :

    USE AdventureWorks2008R2;
    GO
    IF EXISTS (
    SELECT * 
       FROM INFORMATION_SCHEMA.ROUTINES 
       WHERE SPECIFIC_NAME = 'WorkOrdersFor<product_name, nvarchar(50), name>')
       DROP PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>;
    GO
    CREATE PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>
    AS
    SELECT Name, WorkOrderID 
    FROM Production.WorkOrder AS WO
    JOIN Production.Product AS Prod
    ON WO.ProductID = Prod.ProductID
    WHERE Name = '<product_name, nvarchar(50), name>';
    GO
    
  13. Dans le menu Fichier, cliquez sur Save WorkOrdersProc.sql (Enregistrer ProcBonTravail.sql) pour enregistrer votre modèle.

Pour tester le modèle personnalisé

  1. Dans l'Explorateur de modèles, développez Procédure stockée puis Personnalisé et double-cliquez sur WorkOrderProc.

  2. Dans la boîte de dialogue Se connecter au moteur de base de données, fournissez les informations de connexion, puis cliquez sur Se connecter. Une nouvelle fenêtre de l'Éditeur de requête s'affiche avec le modèle WorkOrderProc.

  3. Dans le menu Requête, cliquez sur Spécifier les valeurs des paramètres du modèle.

  4. Dans la boîte de dialogue Spécifier des valeurs pour les paramètres de modèle, pour la valeur nom_produit, tapez FreeWheel (Roue) (en remplaçant le contenu du champ), puis cliquez sur OK pour fermer la boîte de dialogue Spécifier des valeurs pour les paramètres de modèle et modifier le script dans l'Éditeur de requête.

  5. Appuyez sur F5 pour exécuter la requête et créer la procédure.