Condividi tramite


Eseguire T-SQL da un file di script con sqlcmd

Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW)

Usare sqlcmd per eseguire un file di script Transact-SQL. Un file script Transact-SQL è un file di testo che può contenere una combinazione di istruzioni Transact-SQL, comandi sqlcmd e variabili di scripting.

Creare un file script

Supponendo di aver installato il database di esempio AdventureWorks2022, seguire l'esempio riportato in questa sezione per creare un file di script che è possibile eseguire dal prompt dei comandi con sqlcmd.

Per creare un file script Transact-SQL semplice in Blocco note, seguire questa procedura:

  1. Fare clic su Start, scegliere Tutti i programmi, Accessori e quindi fare clic su Blocco note.

  2. Copiare e incollare il codice Transact-SQL seguente nek Blocco note di Windows:

    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. Salvare il file come myScript.sql in una cartella, ad esempio C:\scripts l'unità.

Eseguire il file di script

  1. Aprire una finestra del prompt dei comandi.

  2. Nella finestra del prompt dei comandi digitare: sqlcmd -S myServer\instanceName -i C:\scripts\myScript.sql

  3. Premere INVIO.

Nella finestra del prompt dei comandi verrà visualizzato un elenco di nomi e indirizzi di dipendenti di Adventure Works.

Salvare l'output in un file di testo

  1. Aprire una finestra del prompt dei comandi.

  2. Nella finestra del prompt dei comandi digitare: sqlcmd -S myServer\instanceName -i C:\scripts\myScript.sql -o C:\EmpAdds.txt

  3. Premere INVIO.

Nella finestra del prompt dei comandi non verrà restituito alcun output. L'output verrà invece inviato al file EmpAdds.txt. È possibile verificare l'output aprendo il file EmpAdds.txt.