Script (Motore di database)

Il Motore di database di SQL Server supporta l'ambiente di scripting di Microsoft PowerShell per gestire le istanze del Motore di database e gli oggetti nelle istanze. È inoltre possibile compilare ed eseguire query nel Motore di database che contengono Transact-SQL e XQuery in ambienti molto simili agli ambienti di scripting.

SQL Server PowerShell

In SQL Server sono inclusi due snap-in PowerShell per SQL Server che implementano:

  • Un provider PowerShell per SQL Server che espone le gerarchie dei modelli SMO (SQL Server Management Objects) come percorsi di PowerShell simili ai percorsi del file system. È possibile utilizzare le classi del modello SMO (SQL Server Management Objects) per gestire gli oggetti rappresentati in ciascun nodo del percorso.

  • Un set di cmdlet di SQL Server che implementa i comandi di SQL Server. Uno dei cmdlet è Invoke-Sqlcmd, il quale viene utilizzato per eseguire gli script delle query del Motore di database da eseguire con l'utilità sqlcmd.

In SQL Server vengono fornite due caratteristiche per l'esecuzione di PowerShell:

  • L'utilità sqlps, che avvia PowerShell e carica gli snap-in di SQL Server. È possibile eseguire in modo interattivo comandi ad hoc di PowerShell. È possibile eseguire file script utilizzando un comando come .\MyFolder\MyScript.ps1. È possibile avviare sqlps in un prompt dei comandi o facendo clic con il pulsante destro del mouse sui nodi dell'albero di Esplora oggetti di SQL Server Management Studio e selezionando Avvia PowerShell.

  • I file script di PowerShell possono essere utilizzati come input dei passaggi del processo di PowerShell per SQL Server Agent che eseguono gli script in base a intervalli pianificati o in risposta a eventi di sistema.

Query del motore di database

Gli script delle query del Motore di database contengono tre tipi di elementi:

  • Istruzioni del linguaggio Transact-SQL.

  • Istruzioni del linguaggio XQuery.

  • Comandi e variabili dell'utilità sqlcmd.

In SQL Server sono disponibili tre ambienti per la compilazione e l'esecuzione di query del Motore di database:

  • Le query del Motore di database e il relativo debug possono essere eseguiti in modo interattivo nell'editor di query del Motore di database in SQL Server Management Studio. È possibile codificare ed eseguire il debug di varie istruzioni in una sessione, quindi salvare tutte le istruzioni in un solo file script.

  • L'utilità della riga di comando sqlcmd consente di eseguire in modo interattivo le query del Motore di database, nonché di eseguire i file script delle query del Motore di database esistenti.

In genere, i file script delle query del Motore di database vengono codificati in modo interattivo in SQL Server Management Studio utilizzando l'editor di query del Motore di database. Il file può essere aperto in un secondo momento in uno degli ambienti seguenti:

  • Utilizzare il menu di SQL Server Management StudioFile/Apri per aprire il file in una nuova finestra dell'editor di query del Motore di database.

  • Utilizzare il parametro -iinput_file per eseguire il file con l'utilità sqlcmd.

  • Utilizzare il parametro -QueryFromFile per eseguire il file con il cmdlet Invoke-Sqlcmd negli script di SQL Server PowerShell.

  • Utilizzare i passaggi del processo Transact-SQL di SQL Server Agent per eseguire gli script a intervalli pianificati o in risposta a eventi di sistema.

Inoltre, è possibile utilizzare la Generazione guidata script di SQL Server per generare script Transact-SQL. Fare clic con il pulsante destro del mouse su Esplora oggetti in SQL Server Management Studio, quindi selezionare la voce di menu Genera script. Con Genera script viene avviata la procedura guidata, che consente di eseguire in modo semplificato i passaggi necessari per creare uno script. Per ulteriori informazioni, vedere Documentazione di database mediante la creazione di script.