嵌套存储过程链

时间:2012-07-11 12:44:15

标签: sql-server stored-procedures nested

我有这个SQL Server,有很多存储过程遍布所有数据库和 我正在寻找一种方法来找到这些嵌套存储过程如何相互链接,所以基本上看看哪个存储过程正在运行哪个。

想知道是否有任何人遇到同样的问题,并找到了以一种无痛的方式获取此类信息的方法,而不是打开每个存储过程并检查它正在运行的其他存储过程。

由于

2 个答案:

答案 0 :(得分:3)

方法#1

右键单击表名并选择“View Dependencies”,如下所示,我们正在查看Employee表的依赖项。

enter image description here


方法#2

SELECT 
        routine_name, 
        routine_type 

FROM    INFORMATION_SCHEMA.ROUTINES

WHERE   ROUTINE_DEFINITION LIKE '%Your Object Name%'

方法#3

EXEC sp_depends 'Your Object Name'

方法#4

SELECT referencing_schema_name, referencing_entity_name,
referencing_id, referencing_class_desc, is_caller_dependent
FROM sys.dm_sql_referencing_entities ('Your Object Name', 'OBJECT');

答案 1 :(得分:0)

根据您需要的信息,您可以查询sys.sql_expression_dependencies目录视图或使用sys.dm_sql_referenced_entities或sys.dm_sql_referencing_entities动态管理功能。

有关这些的信息,包括直接和间接依赖关系(链式依赖关系)的SQL查询的各种示例,请访问:Reporting SQL Dependencies