Debugger Transact-SQLTransact-SQL Debugger

Il debugger Transact-SQLTransact-SQL consente di individuare errori nel codice Transact-SQLTransact-SQL esaminandone il comportamento in fase di esecuzione.The Transact-SQLTransact-SQL debugger helps you find errors in Transact-SQLTransact-SQL code by investigating the run-time behavior of the code. Dopo avere impostato la finestra dell'editor di query del Motore di databaseDatabase Engine sulla modalità di debug, è possibile sospendere l'esecuzione di righe specifiche di codice e controllare le informazioni e i dati utilizzati o restituiti da tali istruzioni Transact-SQLTransact-SQL .After you set the Motore di databaseDatabase Engine Query Editor window to debug mode, you can pause execution on specific lines of code and inspect information and data that is used by or returned by those Transact-SQLTransact-SQL statements.

Esecuzione istruzione per istruzione del codice Transact-SQLStepping Through Transact-SQL Code

Il debugger Transact-SQLTransact-SQL fornisce le seguenti opzioni che è possibile usare per spostarsi nel codice di Transact-SQLTransact-SQL quando la finestra dell'editor di query del Motore di databaseDatabase Engine è in modalità di debug:The Transact-SQLTransact-SQL debugger provides the following options that you can use to navigate through Transact-SQLTransact-SQL code when the Motore di databaseDatabase Engine Query Editor window is in debug mode:

  • Impostare i punti di interruzione su singole istruzioni Transact-SQLTransact-SQL .Set breakpoints on individual Transact-SQLTransact-SQL statements.

    Un punto di interruzione specifica un punto in cui si desidera interrompere l'esecuzione per esaminare i dati.A breakpoint specifies a point at which you want execution to pause so you can examine data. Quando viene avviato, il debugger sospende l'esecuzione in corrispondenza della prima riga di codice nella finestra dell'editor di query.When you start the debugger, it pauses on the first line of code in the Query Editor window. Per proseguire l'esecuzione fino al primo punto di interruzione impostato, è possibile usare la funzionalità Continua .To run to the first breakpoint that you have set, you can use the Continue feature. 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.You can also use the Continue feature to run to the next breakpoint from any location at which the window is currently paused. È 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.You can edit breakpoints to specify actions such as the conditions under which the breakpoint should pause execution, information to print to the output window, and change the location of the breakpoint.

  • Eseguire la successiva istruzione.Step into the next statement.

    Questa opzione consente di spostarsi da un'istruzione alla successiva in un set di istruzioni e di osservare il comportamento di ognuna.This option enables you to navigate through a set of statements one by one, and to observe their behavior as you go.

  • Eseguire una chiamata o passare alla successiva chiamata a una stored procedure o una funzione.Step either into or over a call to a stored procedure or function.

    Se si è sicuri che in una stored procedure non vi siano errori, è possibile superarla.If you are sure there are no errors in a stored procedure, you can step over it. La procedura viene eseguita completamente e i risultati vengono restituiti al codice.The procedure is executed in full, and the results are returned to the code.

    Se si desidera eseguire il debug di una stored procedure o una funzione, è possibile eseguirlo nel modulo.If you want to debug a stored procedure or function, you can step into the module. SQL Server Management StudioSQL Server Management Studio apre una nuova finestra dell'editor di query del Motore di databaseDatabase Engine popolata con il codice sorgente per il modulo, imposta la finestra in modalità di debug, quindi sospende l'esecuzione della prima istruzione nel modulo. Query Editor window that is populated with the source code for the module, places the window into debug mode, and then pauses execution on the first statement in the module. È possibile spostarsi quindi attraverso il codice del modulo, ad esempio, impostando dei punti di interruzione o avanzando nel codice.You can then navigate through the module code, for example, by setting breakpoints or stepping through the code.

    Per altre informazioni sulle modalità con cui il debugger consente di spostarsi nel codice, vedere Esecuzione istruzione per istruzione del codice Transact-SQL.For more information about how the debugger enables you to navigate code, see Step Through Transact-SQL Code.

Visualizzazione delle informazioni del debuggerViewing Debugger Information

Ogni volta che il debugger sospende l'esecuzione in corrispondenza di un'istruzione Transact-SQLTransact-SQL specifica, è possibile utilizzare le seguenti finestre del debugger per visualizzare lo stato corrente dell'esecuzione:Each time the debugger pauses execution on a specific Transact-SQLTransact-SQL statement, you can use the following debugger windows to view the current execution state:

  • Locals and Watch.Locals and Watch. In queste finestre vengono visualizzate le espressioni Transact-SQLTransact-SQL attualmente allocate.These windows display currently allocated Transact-SQLTransact-SQL expressions. Le espressioni sono clausole Transact-SQLTransact-SQL che restituiscono una singola espressione scalare.Expressions are Transact-SQLTransact-SQL clauses that evaluate to a single, scalar expression. Il debugger Transact-SQLTransact-SQL supporta la visualizzazione di espressioni che fanno riferimento a variabili, parametri oppure alle funzioni predefinite Transact-SQLTransact-SQL i cui nomi iniziano con @@.The Transact-SQLTransact-SQL debugger supports viewing expressions that reference Transact-SQLTransact-SQL variables, parameters, or the built-in functions that have names that start with @@. In queste finestre vengono inoltre visualizzati i valori dei dati che sono attualmente assegnati alle espressioni.These windows also display the data values that are currently assigned to the expressions.

  • Controllo immediato.QuickWatch. Questa finestra visualizza il valore di un'espressione Transact-SQLTransact-SQL e consente di salvare l'espressione in una finestra Espressione di controllo .This window displays the value of a Transact-SQLTransact-SQL expression, and enables saving that expression to a Watch window.

  • Punti di interruzione.Breakpoints. In questa finestra vengono visualizzati i punti di interruzione attualmente impostati ed è possibile gestirli.This window displays the currently set breakpoints and enables you to manage them.

  • Stack di chiamate.Call Stack. In questa finestra viene visualizzato il percorso di esecuzione corrente.This window displays the current execution location. 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.And also provides information about how execution passed from the original Query Editor window through any functions, stored procedures, or triggers to reach the current execution location.

  • Output.Output. In questa finestra vengono visualizzati i vari messaggi e dati del programma, ad esempio i messaggi di sistema inviati dal debugger.This window displays various messages and program data, such as system messages from the debugger.

  • Results and Messages.Results and Messages. In queste schede della finestra dell'editor di query vengono visualizzati i risultati delle istruzioni Transact-SQLTransact-SQL precedentemente eseguite.These tabs on the Query Editor window display the results of previously executed Transact-SQLTransact-SQL statements.

Attività del debugger Transact-SQLTransact-SQL Debugger Tasks

Descrizione dell'attivitàTask Description ArgomentoTopic
Descrive come configurare il debugger Transact-SQLTransact-SQL per il debugging remoto.Describes how to configure the Transact-SQLTransact-SQL debugger for remote debugging. Configurare le regole del firewall prima di eseguire il debugger TSQLConfigure firewall rules before running the TSQL Debugger
Descrive come avviare, arrestare e controllare l'operazione del debugger.Describes how to start, stop, and control the operation of the debugger. Esecuzione del debugger Transact-SQLRun the Transact-SQL Debugger
Descrive come utilizzare il debugger Transact-SQLTransact-SQL per avanzare nel codice.Describes how to use the Transact-SQLTransact-SQL debugger to step through code. Esecuzione istruzione per istruzione del codice Transact-SQLStep Through Transact-SQL Code
Descrive come utilizzare il debugger per visualizzare dati Transact-SQLTransact-SQL , ad esempio parametri e variabili, e informazioni sul sistema.Describes how to use the debugger to view Transact-SQLTransact-SQL data, such as parameters and variables, and system information. Informazioni del debugger Transact-SQLTransact-SQL Debugger Information

Vedere ancheSee Also

Editor di query e di testo (SQL Server Management Studio)Query and Text Editors (SQL Server Management Studio)