Debugger Transact-SQL

Si applica a: SQL Server (tutte le versioni supportate)

Il debugger Transact-SQL consente di trovare errori nel codice Transact-SQL esaminando il comportamento di runtime del codice. Dopo aver impostato la finestra motore di database Editor di query modalità di debug, è possibile sospendere l'esecuzione su righe di codice specifiche e controllare informazioni e dati usati da 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 offre le opzioni seguenti che è possibile usare per passare tramite codice Transact-SQL quando la finestra del motore di database Editor di query è in modalità di debug:

  • Impostare punti di interruzione in 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 del motore di database Editor di query popolata con il codice sorgente per il modulo, inserisce la finestra in modalità di debug e quindi sospende l'esecuzione nella prima istruzione del 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 un'istruzione Transact-SQL specifica, è possibile usare le finestre del debugger seguenti per visualizzare lo stato di esecuzione corrente:

  • Gente del posto e Guarda. Queste finestre visualizzano le espressioni Transact-SQL attualmente allocate. Le espressioni sono clausole Transact-SQL che valutano una singola espressione scalare. Il debugger Transact-SQL supporta la visualizzazione di espressioni che fanno riferimento a variabili Transact-SQL, parametri o funzioni predefinite con nomi che 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 tale espressione in una finestra Watch .

  • 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. Queste schede nella finestra Editor di query visualizzano i risultati delle istruzioni Transact-SQL eseguite in precedenza.

Attività del debugger Transact-SQL

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

Vedere anche

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