SQL Server 2005 - просмотр SP, выполняющихся внутри SP - PullRequest
4 голосов
/ 11 декабря 2008

Мне интересно, возможно ли увидеть хранимые процессы, которые выполняются другими хранимыми процессами в Sql Server Profiler, возможно ли это, и если да, то как?

1 Ответ

4 голосов
/ 12 декабря 2008

Если вы профилируете, используя событие SP :: Starting, вы можете увидеть все хранимые процедуры, которые выполняются. Вы хотите убедиться, что пара столбцов профиля включена:

NestLevel - показывает уровень вложенности SP, вызывающих друг друга - поэтому, если Test вызывает EmbeddedTest, событие SP :: Starting для Test покажет NestLevel = 1, а событие для EmbeddedTest покажет NestLevel = 2

ObjectName - показывает имя выполняемой хранимой процедуры

SPID - идентификатор сеанса для соединения

Таким образом, чтобы найти вызывающую последовательность, вам нужно найти событие с NestLevel больше 1, а затем искать NestLevel = 1 для того же SPID, который предшествовал вызову. Конечно, это работает и для более глубоких уровней вложенности.

...