SQL Server 2005 - 在SP内部执行SP

时间:2008-12-11 19:09:46

标签: sql-server sql-server-2005 sql-server-profiler

我想知道是否有可能在Sql Server Profiler中看到正在由其他存储过程执行的存储过程,是否可能,如果是这样的话?

1 个答案:

答案 0 :(得分:4)

如果使用SP :: Starting事件进行配置,则可以看到所有已执行的存储过程。您希望确保包含几个配置文件列:

NestLevel - 显示相互调用的SP的嵌套级别 - 因此,如果Test调用EmbeddedTest,则测试的SP :: Starting事件将显示NestLevel = 1,而EmbeddedTest的事件将显示NestLevel = 2

ObjectName - 显示正在执行的存储过程的名称

SPID - 连接的会话ID

因此,要查找调用序列,您需要查找NestLevel大于1的事件,然后在调用之前的同一SPID上查找NestLevel = 1。当然,这也适用于更深的嵌套级别。