Partilhar via


Depurar procedimentos armazenados

O depurador de Transact-SQL permite depurar interativamente procedimentos armazenados exibindo a pilha de chamadas SQL, variáveis locais e parâmetros para o procedimento armazenado SQL. O depurador Transact-SQL suporta a visualização e modificação de variáveis e parâmetros locais, visualizando variáveis globais. Ele também fornece a possibilidade de controlar e gerir pontos de interrupção enquanto depura o seu script Transact-SQL.

Este exemplo mostra como criar e depurar um procedimento armazenado Transact-SQL entrando nele.

Observação

Transact-SQL depuração não está disponível para o Banco de Dados SQL do Azure ou para a Instância Gerenciada SQL do Azure.

Depurar um procedimento armazenado

  1. Na janela Editor de Consultas do Mecanismo de Banco de Dados, conecte-se a uma instância do Mecanismo de Banco de Dados do SQL Server. Selecione um banco de dados no qual você pode criar um exemplo de procedimento armazenado.

  2. Cole o código a seguir no Editor de Consultas.

    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
    
  3. Pressione F5 para executar o código Transact-SQL.

  4. No Pesquisador de Objetos do SQL Server, clique com o botão direito do mouse no mesmo Mecanismo de Banco de Dados e selecione Nova Consulta.... Verifique se você está conectado ao mesmo banco de dados no qual criou o procedimento armazenado.

  5. Cole o código a seguir na janela de consulta.

    EXECUTE [dbo].[AddProduct] 50, N'T-SQL Debugger Test';
    GO
    
  6. Selecione a margem esquerda da janela para adicionar um ponto de interrupção à EXEC instrução.

  7. Pressione a seta da lista suspensa no botão de seta verde na barra de ferramentas do editor de Transact-SQL e selecione Executar com depurador para executar a consulta com a depuração ativada.

  8. Como alternativa, podes iniciar o debug a partir do menu SQL. Selecione SQL>Executar com Depurador.

  9. Certifique-se de que a janela Locals está aberta. Caso contrário, selecione o menu Depurar , selecione Windows e Local.

  10. Pressione F11 para entrar na consulta. Os parâmetros do procedimento de armazenamento e seus respetivos valores aparecem na janela Locais . Como alternativa, passe o mouse sobre o parâmetro @name na cláusula INSERT para ver o valor de teste do depurador T-SQL sendo atribuído a ele.

  11. Selecione Teste do Depurador T-SQL na caixa de texto. Digite , valide a alteração e pressione ENTER para alterar o valor da variável name durante o processo de depuração. Você também pode alterar o seu valor na janela Locais. O valor do parâmetro é vermelho, indicando uma alteração.

  12. Pressione F10 para passar sobre o código restante.

  13. Quando a depuração estiver concluída, interrogue a tabela Product para ver o seu conteúdo.

    SELECT *
    FROM [dbo].[Products];
    GO
    
  14. Na janela de resultados, observe que existem novas linhas na tabela.