Окно стека вызовов

В окне Стек вызовов отображаются модули в стеке вызова, а также типы данных и значения всех параметров, передаваемых в модули. К модулям Transact-SQL относятся хранимые процедуры, функции и триггеры. Чтобы отобразить стек вызовов, необходимо находиться в режиме отладки.

Доступ к окну «Стек вызовов»

  • В меню Отладка укажите Окна и выберите пункт Стек вызовов.

Изменение текущего кадра стека в стеке вызова

Можно использовать любую из следующих процедур, чтобы сделать один из кадров стека текущим.

  • Щелкните правой кнопкой мыши кадр стека и выберите команду Перейти к фрагменту.

  • Дважды щелкните кадр стека.

Просмотр источника кадра, отличного от текущего кадра

  • Щелкните правой кнопкой мыши кадр стека и выберите команду К исходному коду.

Кадры стека

Каждая строка в окне Стек вызовов называется кадром стека и представляет либо вызов модуля из файла скрипта Transact-SQL, либо вызов одного модуля из другого модуля. Нижний кадр стека на экране показывает ту строку в окне редактора запросов компонента Компонент Database Engine, в которой был сделан первый вызов в стеке. Верхняя строка указывает строку, на которой отладчик приостановил выполнение, и обозначается желтой стрелкой в левом поле окна. Каждая промежуточная строка указывает модуль и номер строки исходного кода, в котором произошел вызов следующего, вышестоящего кадра стека.

Все выражения в окнах Локальные значения, Контрольные значения и Быстрая проверка вычисляются на основе текущего кадра стека. В окне «Редактор запросов» отображается код текущего кадра. По умолчанию текущим кадром стека является кадр, в котором отладчик Transact-SQL приостановил выполнение. После перехода от текущего кадра стека к другому кадру выражения в окнах Локальные переменные, Контрольные значения и Быстрая проверка повторно вычисляются в контексте нового кадра и в окне редактора запросов отображается исходный код нового кадра.

Столбцы

  • Название
    Отображается информация о модуле в стеке вызова.

    В нижней строке в стеке вызова в поле Имя указано окно источника редактора запросов и номер строки первого вызова в стеке. В других строках поле Имя имеет формат Модуль(Экземпляр.База_данных)(Список_параметров) Номер_строки.

    • Модуль
      Представляет собой имя хранимой процедуры, функции или хранимой процедуры, вызвавшей следующий кадр.

    • Экземпляр.База_данных
      Указывает экземпляр компонента Компонент Database Engine и базу данных, в которой содержится модуль.

    • Список_параметров
      Указывает тип данных, имя и значение каждого параметра, переданного во время вызова в модуль.

    • Номер_строки
      Для всех строк, кроме верхней строки, значение Номер_строки указывает, в какой строке модуля вызван этот кадр. Для верхней строки значение Номер_строки указывает строку, которая в настоящее время находится в фокусе в отладчике.

  • Язык
    Для языка Transact-SQL отображается значение Transact-SQL.

См. также

Основные понятия

Отладчик Transact-SQL

Сведения отладчика Transact-SQL

Пошаговая отладка кода Transact-SQL