Effettuare il debug delle stored procedure
Il debugger Transact-SQL consente di eseguire il debug interattivo delle stored procedure visualizzando lo stack di chiamate SQL, le variabili locali e i parametri per la stored procedure SQL. Il debugger Transact-SQL supporta la visualizzazione e la modifica di variabili e parametri locali, visualizzando variabili globali. Consente inoltre di controllare e gestire i punti di interruzione durante il debug dello script Transact-SQL.
In questo esempio viene illustrato come creare ed eseguire il debug di una stored procedure Transact-SQL eseguendo l'istruzione in essa.
Nota
Il debugging Transact-SQL non è disponibile per il database SQL di Azure o l'istanza SQL gestita di Azure.
Per eseguire il debug di procedure memorizzate
Nella finestra Editor query del motore di database connettersi a un'istanza del motore di database di SQL Server. Selezionare un database in cui è possibile creare una stored procedure di esempio.
Incollare il codice seguente nell'editor di query.
CREATE TABLE [dbo].[Product] ([Id] INT, [Name] NVARCHAR(128)) CREATE PROCEDURE [dbo].[AddProduct] @id INT, @name NVARCHAR(128) AS BEGIN INSERT INTO [dbo].[Product] ([Id], [Name]) VALUES (@id, @name) SELECT [Name] FROM [dbo].[Product] WHERE [Id] = @id DECLARE @nextid INT SET @nextid = @id + 1 INSERT INTO [dbo].[Product] ([Id], [Name]) VALUES (@id, @name) SELECT [Name] FROM [dbo].[Product] WHERE [Id] = @nextid END
Premere F5 per eseguire il codice Transact-SQL.
In "Esplora oggetti di SQL Server", fare clic con il pulsante destro del mouse sullo stesso motore di database e selezionare Nuova query.... Assicurati di essere connesso allo stesso database in cui hai creato la stored procedure.
Incollare il codice seguente nella finestra di query.
EXEC [dbo].[AddProduct] 50, N'T-SQL Debugger Test'; GO
Fare clic sul margine sinistro della finestra per aggiungere un punto di interruzione all'istruzione
EXEC
.Premere la freccia a discesa sul pulsante freccia verde sulla barra degli strumenti dell'editor Transact-SQL e selezionare Esegui con debugger per eseguire la query con debug.
In alternativa, è possibile avviare il debug dal menu SQL. Selezionare SQL ->Esegui con il debugger.
Assicurati che la finestra variabili locali sia aperta. In caso contrario, fare clic sul menu Debug, selezionare Windows e Local.
Premere F11 per avanzare nella query. Si noti che i parametri della procedura di memorizzazione e i rispettivi valori sono visualizzati nella finestra Variabili locali. In alternativa, passa il puntatore del mouse sul parametro
@name
nella clausolaINSERT
per vedere il valore del Test del debugger T-SQL assegnato.Selezionare Test del debugger T-SQL nella casella di testo. Digitare Convalida modifica e premere INVIO per modificare il valore della variabile
name
durante il debug. È anche possibile modificarne il valore nella finestra variabili locali. Si noti che il valore del parametro è rosso, che indica una modifica.Premere F10 per eseguire il passaggio del codice rimanente.
Al termine del debug, eseguire una query sulla tabella product per visualizzarne il contenuto.
SELECT * FROM [dbo].[Products]; GO
Nella finestra dei risultati si noti che nella tabella sono presenti nuove righe.