Поделиться через


Отладка хранимых процедур

Отладчик Transact-SQL позволяет интерактивно отлаживать хранимые процедуры, отображая стек вызовов SQL, локальные переменные и параметры хранимой процедуры SQL. Отладчик Transact-SQL поддерживает просмотр и изменение локальных переменных и параметров, просмотр глобальных переменных. Она также предоставляет возможность контролировать и управлять точками останова при отладке скрипта Transact-SQL.

В этом примере показано, как создать и отладить хранимую процедуру Transact-SQL путем пошагового выполнения.

Заметка

Transact-SQL отладка недоступна для Базы данных SQL Azure или Управляемого экземпляра SQL Azure.

Отладка хранимых процедур

  1. В окне редактора запросов ядра СУБД подключитесь к экземпляру ядра СУБД SQL Server. Выберите базу данных, в которой можно создать пример хранимой процедуры.

  2. Вставьте следующий код в редактор запросов.

    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
    
  3. Нажмите клавишу F5, чтобы запустить код Transact-SQL.

  4. В обозревателе объектов SQL Server щелкните правой кнопкой мыши тот же ядро СУБД и выберите Создать запрос.... Убедитесь, что вы подключены к той же базе данных, в которой вы создали хранимую процедуру.

  5. Вставьте следующий код в окно запроса.

    EXEC [dbo].[AddProduct] 50, N'T-SQL Debugger Test';  
    GO  
    
  6. Щелкните левую границу окна, чтобы добавить точку останова в выражение EXEC.

  7. Нажмите стрелку раскрывающегося списка на зеленой кнопке со стрелкой на панели инструментов редактора Transact-SQL и выберите Выполнить с помощью отладчика, чтобы выполнить запрос с отладкой.

  8. Кроме того, можно начать отладку из меню SQL. Выберите SQL —>выполнить с помощью отладчика.

  9. Убедитесь, что открыто окно локальных. Если нет, щелкните меню Отладка, выберите Windows и Локальные.

  10. Нажмите клавишу F11, чтобы перейти к запросу. Обратите внимание, что параметры процедуры хранения и их соответствующие значения отображаются в окне Локальные. Кроме того, наведите указатель мыши на параметр @name в предложении INSERT, чтобы увидеть, какое значение тест отладчика T-SQL присваивается ему.

  11. Выберите в текстовом поле тест отладчика T-SQL . Введите , подтвердите изменение и нажмите клавишу ВВОД, чтобы изменить значение переменной name при отладке. Вы также можете изменить его значение в окне Локальные. Обратите внимание, что значение параметра красное, указывающее на изменение.

  12. Нажмите клавишу F10, чтобы перешагнуть оставшийся код.

  13. По завершении отладки запросите таблицу продукта, чтобы просмотреть его содержимое.

    SELECT * FROM [dbo].[Products];  
    GO
    
  14. В окне результатов обратите внимание, что в таблице существуют новые строки.