Step Through Transact-SQL Code
Applies to: SQL Server (all supported versions)
The Transact-SQL debugger enables you to control which Transact-SQL statements are run in a Database Engine Query Editor window. You can pause the debugger on individual statements and then view the state of the code elements at that point.
This feature works with SSMS version 17.9.1 and earlier.
A breakpoint signals the debugger to pause execution on a specific Transact-SQL statement. For more information about breakpoints, see Transact-SQL Breakpoints.
Controlling Statement Execution
In the Transact-SQL debugger, you can specify the following options for executing from the current statement in Transact-SQL code:
Run to the next breakpoint.
Step into the next statement.
If the next statement invokes a Transact-SQL stored procedure, function, or trigger, the debugger displays a new Query Editor window that contains the code of the module. The window is in debug mode, and execution pauses on the first statement in the module. You can then move through the module code, for example, by setting breakpoints or stepping through the code.
Step over the next statement.
The next statement is executed. However, if the statement invokes a stored procedure, function, or trigger, the module code runs until it finishes, and the results are returned to the calling code. If you are sure there are no errors in a stored procedure, you can step over it. Execution pauses on the statement that follows the call to the stored procedure, function, or trigger.
Step out of a stored procedure, function, or trigger.
Execution pauses on the statement that follows the call to the stored procedure, function, or trigger.
Run from the current location to the current location of the pointer, and ignore all breakpoints.
The following table lists the various ways in which you can control how statements execute in the Transact-SQL debugger.
|Run all statements from the current statement to the next breakpoint||Click Continue on the Debug menu.
Click the Continue button on the Debug toolbar.
|Step into the next statement or module||Click Step Into on the Debug menu.
Click the Step Into button on the Debug toolbar.
|Step over the next statement or module||Click Step Over on the Debug menu.
Click the Step Over button on the Debug toolbar.
|Step out of a module||Click Step Out on the Debug menu.
Click the Step Out button on the Debug toolbar.
|Run to the current cursor location||Right-click in the Query Editor window, and then click Run To Cursor.
Submit and view feedback for