Debugger Transact-SQL

Si applica a:SQL Server

Il debugger Transact-SQL consente di individuare errori nel codice Transact-SQL esaminandone il comportamento in fase di esecuzione. Dopo avere impostato la finestra dell'editor di query del motore di database sulla modalità di debug, è possibile sospendere l'esecuzione in corrispondenza di righe specifiche di codice e controllare le informazioni e i dati usati o restituiti da tali istruzioni Transact-SQL.

Questa funzionalità è disponibile con la versione 17.9.1 di SSMS e versioni precedenti. Il debug T-SQL è disponibile anche in SQL Server Data Tools per Visual Studio.

Esecuzione istruzione per istruzione del codice Transact-SQL

Il debugger Transact-SQL fornisce le opzioni seguenti per spostarsi nel codice Transact-SQL quando la finestra dell'editor di query del motore di database è in modalità di debug:

  • Impostare punti di interruzione su singole istruzioni Transact-SQL.

    Un punto di interruzione specifica un punto in cui si desidera interrompere l'esecuzione per esaminare i dati. Quando viene avviato, il debugger sospende l'esecuzione in corrispondenza della prima riga di codice nella finestra dell'editor di query. Per proseguire l'esecuzione fino al primo punto di interruzione impostato, è possibile usare la funzionalità Continua . La funzionalità Continua può essere usata anche per procedere al successivo punto di interruzione da qualsiasi posizione in cui è stata attualmente messa in pausa la finestra. È possibile modificare i punti di interruzione per specificare alcune azioni, ad esempio le condizioni in base alle quali il punto deve interrompere l'esecuzione, le informazioni da visualizzare nella finestra di output e la modifica della posizione del punto di interruzione.

  • Eseguire la successiva istruzione.

    Questa opzione consente di spostarsi da un'istruzione alla successiva in un set di istruzioni e di osservare il comportamento di ognuna.

  • Eseguire una chiamata o passare alla successiva chiamata a una stored procedure o una funzione.

    Se si è sicuri che in una stored procedure non vi siano errori, è possibile continuare. La procedura viene eseguita completamente e i risultati vengono restituiti al codice.

    Se si desidera eseguire il debug di una stored procedure o una funzione, è possibile eseguirlo nel modulo. SQL Server Management Studio apre una nuova finestra dell'editor di query del motore di database popolata con il codice sorgente per il modulo, imposta la finestra in modalità di debug, quindi sospende l'esecuzione della prima istruzione nel modulo. È possibile spostarsi quindi attraverso il codice del modulo, ad esempio, impostando dei punti di interruzione o avanzando nel codice.

Per altre informazioni sulle modalità con cui il debugger consente di spostarsi nel codice, vedere Esecuzione istruzione per istruzione del codice Transact-SQL.

Visualizzazione delle informazioni del debugger

Ogni volta che il debugger sospende l'esecuzione in corrispondenza di un'istruzione Transact-SQL specifica, è possibile usare le finestre del debugger seguenti per visualizzare lo stato corrente dell'esecuzione:

  • Variabili locali ed Espressione di controllo Queste finestre visualizzano le espressioni Transact-SQL attualmente allocate. Le espressioni sono clausole Transact-SQL che restituiscono una singola espressione scalare. Il debugger Transact-SQL supporta la visualizzazione di espressioni che fanno riferimento a variabili, parametri oppure alle funzioni predefinite Transact-SQL i cui nomi iniziano con @@. In queste finestre vengono inoltre visualizzati i valori dei dati che sono attualmente assegnati alle espressioni.

  • Controllo immediato. Questa finestra visualizza il valore di un'espressione Transact-SQL e consente di salvare l'espressione in una finestra Espressione di controllo.

  • Punti di interruzione. In questa finestra vengono visualizzati i punti di interruzione attualmente impostati ed è possibile gestirli.

  • Stack di chiamate. In questa finestra viene visualizzato il percorso di esecuzione corrente. Questa finestra fornisce inoltre informazioni sul modo in cui l'esecuzione è passata dalla finestra dell'editor di query originale attraverso qualsiasi funzione, stored procedure o trigger per raggiungere il percorso di esecuzione corrente.

  • Output. In questa finestra vengono visualizzati i vari messaggi e dati del programma, ad esempio i messaggi di sistema inviati dal debugger.

  • Risultati e Messaggi. In queste schede della finestra dell'editor di query vengono visualizzati i risultati delle istruzioni Transact-SQL eseguite in precedenza.

Attività del debugger Transact-SQL

Descrizione dell'attività Argomento
Descrive come configurare il debugger Transact-SQL per il debug remoto. Configurare le regole del firewall prima di eseguire il debugger di Transact-SQL
Descrive come avviare, arrestare e controllare l'operazione del debugger. Eseguire il debugger Transact-SQL
Descrive come usare il debugger Transact-SQL per avanzare nel codice. Eseguire istruzione per istruzione il codice Transact-SQL
Descrive come usare il debugger per visualizzare dati Transact-SQL, ad esempio parametri e variabili, e informazioni sul sistema. Informazioni del debugger Transact-SQL

Vedi anche

Editor di query e di testo (SQL Server Management Studio)