Окно стека вызовов
В окне Стек вызовов отображаются модули в стеке вызова, а также типы данных и значения всех параметров, передаваемых в модули. К модулям Transact-SQL относятся хранимые процедуры, функции и триггеры. Чтобы отобразить стек вызовов, необходимо находиться в режиме отладки.
Доступ к окну «Стек вызовов»
- В меню Отладка укажите Окна и выберите пункт Стек вызовов.
Изменение текущего кадра стека в стеке вызова
Можно использовать любую из следующих процедур, чтобы сделать один из кадров стека текущим.
Щелкните правой кнопкой мыши кадр стека и выберите команду Перейти к фрагменту.
Дважды щелкните кадр стека.
Просмотр источника кадра, отличного от текущего кадра
- Щелкните правой кнопкой мыши кадр стека и выберите команду К исходному коду.
Кадры стека
Каждая строка в окне Стек вызовов называется кадром стека и представляет либо вызов модуля из файла скрипта Transact-SQL, либо вызов одного модуля из другого модуля. Нижний кадр стека на экране показывает ту строку в окне редактора запросов компонента Компонент Database Engine, в которой был сделан первый вызов в стеке. Верхняя строка указывает строку, на которой отладчик приостановил выполнение, и обозначается желтой стрелкой в левом поле окна. Каждая промежуточная строка указывает модуль и номер строки исходного кода, в котором произошел вызов следующего, вышестоящего кадра стека.
Все выражения в окнах Локальные значения, Контрольные значения и Быстрая проверка вычисляются на основе текущего кадра стека. В окне «Редактор запросов» отображается код текущего кадра. По умолчанию текущим кадром стека является кадр, в котором отладчик Transact-SQL приостановил выполнение. После перехода от текущего кадра стека к другому кадру выражения в окнах Локальные переменные, Контрольные значения и Быстрая проверка повторно вычисляются в контексте нового кадра и в окне редактора запросов отображается исходный код нового кадра.
Столбцы
Название
Отображается информация о модуле в стеке вызова.В нижней строке в стеке вызова в поле Имя указано окно источника редактора запросов и номер строки первого вызова в стеке. В других строках поле Имя имеет формат Модуль(Экземпляр.База_данных)(Список_параметров) Номер_строки.
Модуль
Представляет собой имя хранимой процедуры, функции или хранимой процедуры, вызвавшей следующий кадр.Экземпляр.База_данных
Указывает экземпляр компонента Компонент Database Engine и базу данных, в которой содержится модуль.Список_параметров
Указывает тип данных, имя и значение каждого параметра, переданного во время вызова в модуль.Номер_строки
Для всех строк, кроме верхней строки, значение Номер_строки указывает, в какой строке модуля вызван этот кадр. Для верхней строки значение Номер_строки указывает строку, которая в настоящее время находится в фокусе в отладчике.
Язык
Для языка Transact-SQL отображается значение Transact-SQL.