Transact-SQL 偵錯工具可讓您顯示 SQL 預存程序的 SQL 呼叫堆疊、區域變數和參數,以互動方式對預存程序進行偵錯。 Transact-SQL 偵錯工具會支援檢視和修改區域變數和參數,並檢視全域變數。 還可以讓您在偵錯 Transact-SQL 指令碼時,控制和管理中斷點。
此範例說明如何透過單步執行來建立和偵錯 Transact-SQL 預存程序。
注意
Transact-SQL 偵錯不適用於 Azure SQL Database 或 Azure SQL 受控執行個體。
偵錯預存程序
在 [資料庫引擎查詢編輯器] 視窗中,連接至 SQL Server 資料庫引擎的執行個體。 選取一個資料庫,您可以在該資料庫中建立範例預存程序。
將下列程式碼貼到查詢編輯器中。
CREATE TABLE [dbo].[Products] ([Id] INT, [Name] NVARCHAR(128)) CREATE PROCEDURE [dbo].[AddProduct] @id INT, @name NVARCHAR(128) AS BEGIN INSERT INTO [dbo].[Products] ([Id], [Name]) VALUES (@id, @name) SELECT [Name] FROM [dbo].[Products] WHERE [Id] = @id DECLARE @nextid INT SET @nextid = @id + 1 INSERT INTO [dbo].[Products] ([Id], [Name]) VALUES (@id, @name) SELECT [Name] FROM [dbo].[Products] WHERE [Id] = @nextid END按 F5 執行 Transact-SQL 程式碼。
在 SQL Server 物件總管中,以滑鼠右鍵按一下相同的資料庫引擎,然後選取 [新增查詢...]。請確定您已連線到建立預存程式的相同資料庫。
將下列程式碼貼入查詢視窗。
EXECUTE [dbo].[AddProduct] 50, N'T-SQL Debugger Test'; GO選取左側視窗邊界,將中斷點新增至
EXEC陳述式。按 Transact-SQL 編輯器工具列中綠色箭號按鈕上的下拉式清單箭號,然後選取 [使用偵錯工具執行 ] 以執行開啟偵錯的查詢。
或者,您可以從 SQL 功能表開始執行偵錯。 選取 SQL 使用 Debugger 執行>。
確認 [本地] 視窗已開啟。 如果沒有,請選取 [偵錯] 功能表,選取 [Windows] 和 [本機]。
按 F11 以進入查詢。 存放區程式的參數及其各自的值會顯示在 [區域變數] 視窗中。 或者,將滑鼠停留在
@name子句的INSERT參數上,就會看到指派至這個參數的 T-SQL 偵錯工具測試值。在文字框中選取 [T-SQL 偵錯工具測試]。 輸入 Validate Change 並按 ENTER,變更偵錯時
name變數的值。 您也可以在 [區域變數] 視窗中變更其值。 參數的值為紅色,表示變更。按 F10 以逐步執行剩餘的程式碼。
偵錯完成時,查詢
Product資料表以檢視其內容。SELECT * FROM [dbo].[Products]; GO在結果視窗中,請注意資料表中會有新的資料列。
相關內容
- Transact-SQL 除錯器 (Transact-SQL debugger)
- 執行 Transact-SQL 偵錯工具
- 逐步執行 Transact-SQL 程式碼
- Transact-SQL 偵錯工具資訊