Partager via


Exécutez T-SQL à partir d’un fichier de script avec sqlcmd

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Utilisez sqlcmd pour exécuter un fichier de script Transact-SQL. Un fichier de script Transact-SQL est un fichier texte qui peut contenir une combinaison d’instructions Transact-SQL, de commandes sqlcmd et de variables de script.

Créer un fichier de script

En supposant que vous avez installé l’exemple de base de données AdventureWorks2022, suivez l’exemple de cette section pour créer un fichier de script que vous pouvez exécuter à partir de l’invite de commandes avec sqlcmd.

Pour créer un fichier de script Transact-SQL à l’aide du Bloc-notes, procédez comme suit :

  1. Sélectionnez Démarrer, pointez sur Tous les programmes, sur Accessoires, puis sélectionnez Bloc-notes.

  2. Copiez et collez le code Transact-SQL suivant dans le Bloc-notes :

    USE AdventureWorks2022;
    GO
    SELECT p.FirstName + ' ' + p.LastName AS 'Employee Name',
    a.AddressLine1, a.AddressLine2 , a.City, a.PostalCode
    FROM Person.Person AS p
       INNER JOIN HumanResources.Employee AS e
            ON p.BusinessEntityID = e.BusinessEntityID
        INNER JOIN Person.BusinessEntityAddress bea
            ON bea.BusinessEntityID = e.BusinessEntityID
        INNER JOIN Person.Address AS a
            ON a.AddressID = bea.AddressID;
    GO
    
  3. Enregistrez le fichier en tant que myScript.sql dans un dossier, tel que le lecteur C:\scripts.

Exécuter le fichier de script

  1. Ouvrir une fenêtre d’invite de commandes.

  2. Dans la fenêtre d’invite de commandes, entrez ce qui suit : sqlcmd -S myServer\instanceName -i C:\scripts\myScript.sql

  3. Appuyez sur Entrée.

La liste des noms et des adresses des employés de la société Adventure Works apparaît dans la fenêtre d'invite de commandes.

Enregistrer la sortie dans un fichier texte

  1. Ouvrir une fenêtre d’invite de commandes.

  2. Dans la fenêtre d’invite de commandes, entrez ce qui suit : sqlcmd -S myServer\instanceName -i C:\scripts\myScript.sql -o C:\EmpAdds.txt

  3. Appuyez sur Entrée.

Aucun résultat n'est retourné dans la fenêtre d'invite de commandes. Le résultat est au contraire envoyé dans le fichier EmpAdds.txt. Vous pouvez vérifier ce résultat en ouvrant le fichier EmpAdds.txt.