Запуск отладчика Transact-SQL
Отладчика Transact-SQL можно запустить после открытия окна редактора запросов компонента ядра СУБД. Затем можно начать выполнение кода Transact-SQL в режиме отладки до остановки отладчика. Можно задать параметры и настроить работу отладчика.
Запуск и остановка отладчика
Для запуска отладчика Transact-SQL необходимо соблюдение следующих требований.
Если редактор запросов компонента ядра СУБД подключен к экземпляру компонента ядра СУБД на другом компьютере, следует настроить отладчик для удаленной отладки. Дополнительные сведения см. в статье Настройка отладчика Transact-SQL.
Среда SQL Server Management Studio должна быть запущена под учетной записью Windows, которая является членом предопределенной роли сервера sysadmin.
Окно редактора запросов компонента Компонент Database Engine должно быть подключено с помощью имени входа для проверки подлинности Windows или SQL Server , которое является членом предопределенной роли сервера sysadmin.
Окно Редактор запросов ядра СУБД должно быть подключено к экземпляру ядра СУБД из SQL Server 2005 с пакетом обновления 2 (SP2) или более поздней версии. Когда окно редактора запросов подключено к экземпляру, работающему в однопользовательском режиме, отладчик запустить невозможно.
Исходя из следующих соображений, рекомендуется отлаживать код Transact-SQL на тестовом, а не на рабочем сервере.
Отладка — это операция с высокими привилегиями. Поэтому проводить отладку в SQL Server разрешается только членам предопределенной роли сервера sysadmin.
Зачастую сеансы отладки продолжаются длительное время, когда исследуется действие нескольких инструкций Transact-SQL. Блокировки, например блокировки обновлений, полученные сеансом, могут сохраняться продолжительное время до окончания сеанса либо до фиксации или отката транзакции.
При запуске отладчика Transact-SQL окно редактора запросов переходит в режим отладки. Когда окно редактора запросов переходит в режим отладки, отладчик останавливается на первой строке кода. После этого можно пошагово выполнять код, приостанавливать выполнение на определенных инструкциях Transact-SQL, а также просматривать текущее состояние выполнения при помощи окон отладчика. Запустить отладчик можно либо нажав кнопку Отладка на панели инструментов Запрос , либо выбрав команду Начать отладку в меню Отладка .
Окно редактора запросов остается в режиме отладки до завершения выполнения последней инструкции в окне редактора запросов либо до выхода из режима отладки. Остановить выполнение инструкций и выйти из режима отладки можно одним из следующих способов.
В меню Отладка выберите команду Остановить отладку.
На панели инструментов Отладка нажмите кнопку Остановить отладку .
В меню Запрос выберите команду Отменить выполнение запроса.
На панели инструментов Запрос нажмите кнопку Отменить выполнение запроса .
Кроме того, можно выйти из режима отладки и завершить выполнение оставшихся инструкций Transact-SQL, выбрав команду Отсоединить все в меню Отладка.
Управление отладчиком
Управлять работой отладчика Transact-SQL можно при помощи следующих команд меню, панелей инструментов и сочетаний клавиш.
Меню Отладка и панель инструментов Отладка . И меню Отладка и панель инструментов Отладка остаются неактивными, пока фокус не будет переведен на открытое окно редактора запросов. Они остаются активными до закрытия текущего проекта.
Сочетания клавиш отладчика.
Контекстное меню редактора запросов Контекстное меню открывается при щелчке правой клавишей мыши строки в окне редактора запросов. Когда окно редактора запросов находится в режиме отладки, в контекстном меню отображаются команды отладчика, которые применяются к выделенной строке.
Пункты меню и контекстные команды в окнах, которые открываются отладчиком, например окно Просмотр значения или Точки останова .
В следующей таблице приведены команды меню отладчика, кнопки панелей инструментов и сочетания клавиш.
Команда меню «Отладка» | Команда контекстного меню редактора | Кнопка на панели инструментов | Сочетания клавиш | Действие |
---|---|---|---|---|
Окна/Точки останова | Недоступно | Точки останова | CTRL + ALT + B | Отображает окно Точки останова , в котором можно просматривать и управлять точками останова. |
Окна/Просмотр значений/Просмотр значений1 | Недоступно | Точки останова/Просмотр значений/Просмотр значений1 | CTRL+ALT+W, 1 | Отображает окно Просмотр значений1 . |
Окна/Просмотр значений/Просмотр значений2 | Недоступно | Точки останова/Просмотр значений/Просмотр значений2 | CTRL+ALT+W, 2 | Отображает окно Просмотр значений2 . |
Окна/Просмотр значений/Просмотр значений3 | Недоступно | Точки останова/Просмотр значений/Просмотр значений3 | CTRL+ALT+W, 3 | Отображает окно Просмотр значений3 . |
Окна/Просмотр значений/Просмотр значений4 | Недоступно | Точки останова/Просмотр значений/Просмотр значений4 | CTRL + ALT + W, 4 | Отображает окно Просмотр значений4 . |
Окна/Локальные значения | Недоступно | Точки останова/Локальные значения | CTRL + ALT + V, L | Отображает окно Локальные значения . |
Окна/Стек вызовов | Недоступно | Точки останова/Стек вызовов | CTRL + ALT + C | Отображает окно Стек вызовов . |
Окна/Потоки | Недоступно | Точки останова/Потоки | CTRL + ALT + H | Отображает окно Потоки . |
Продолжить | Недоступно | Продолжить | ALT + F5 | Выполнить код до следующей точки останова. КнопкаПродолжить не активна, пока фокус не будет переведен на окно редактора запросов, которое находится в режиме отладки. |
Начать отладку | Недоступно | Начать отладку | ALT + F5 | Перевод окна редактора запросов в режим отладки и выполнение кода до первой точки останова. Если окно редактора запросов, находящегося в режиме отладки, в фокусе, кнопка Начать отладку заменяется на кнопку Продолжить. |
Приостановить все | Недоступно | Приостановить все | CTRL + ALT + BREAK | Эта функция не используется отладчиком Transact-SQL. |
Остановить отладку | Недоступно | Остановить отладку | SHIFT + F5 | Выводит окно редактора запросов из режима отладки и возвращает его в обычный режим. |
Отсоединить все | Недоступно | Недоступно | Недоступно | Выход из режима отладки, но продолжение выполнения оставшихся инструкций в окне редактора запросов. |
Шаг с заходом | Недоступно | Шаг с заходом | F11 | Выполнение следующей инструкции, а также открытие нового окна редактора запросов в режиме отладки, если следующая инструкция запускает хранимую процедуру, триггер или функцию. |
Шаг с обходом | Недоступно | Шаг с обходом | F10 | То же, что и Шаг с заходом, только при использовании этой команды функции, хранимые процедуры или триггеры не отлаживаются. |
Шаг с выходом | Недоступно | Шаг с выходом | SHIFT+F11 | Выполнение остающегося в триггере, функции или хранимой процедуре кода без паузы в точках останова. Переход в обычный режим отладки осуществляется, когда контроль возвращается коду, вызвавшему этот модуль. |
Недоступно | Выполнить до курсора | Недоступно | CTRL + F10 | Выполнение всего кода от последнего места остановки до текущего места расположения курсора без остановки в точках останова. |
быстрая проверка | быстрая проверка | Недоступно | CTRL + ALT + Q | Отображает окно Быстрая проверка . |
Переключить точку останова | Точка останова/Вставить точку останова | Недоступно | F9 | Размещает точку останова на текущей или выделенной инструкции Transact-SQL. |
Недоступно | Точка останова/Удалить точку останова | Недоступно | Недоступно | Удаляет точку останова из выделенной строки. |
Недоступно | Точка останова/Отключить точку останова | Недоступно | Недоступно | Отключает точку останова в выделенной строке. Точка останова остается в строке кода, но до ее повторного включения она не будет останавливать выполнение кода. |
Недоступно | Точка останова/Включить точку останова | Недоступно | Недоступно | Включает точку останова в выделенной строке. |
Удалить все точки останова | Недоступно | Недоступно | CTRL+SHIFT+F9 | Удаляет все точки останова. |
Отключить все точки останова | Недоступно | Недоступно | Недоступно | Отключает все точки останова. |
Недоступно | Добавить контрольное значение | Недоступно | Недоступно | Добавление выделенного выражения в окно Контрольные значения . |
См. также:
Отладчик Transact-SQL
Пошаговая отладка кода Transact-SQL
Сведения отладчика Transact-SQL
Редактор запросов компонента Database Engine (среда SQL Server Management Studio)