【问题标题】:Find Calling Stored Procedure查找调用存储过程
【发布时间】:2012-08-27 13:18:29
【问题描述】:

存储过程 dbo.csp_Mapping_Step_003 由 [dbo].[csp_Mapping] 使用以下语句调用:

exec csp_Mapping_Step_003 WITH RECOMPILE  

当我尝试使用以下调用以编程方式确定调用过程时...

DECLARE @fullyQualifiedObjectname sysname = 'dbo.csp_Mapping_Step_003'

SELECT
    referencing_schema_name  AS ObjectSchema
    ,referencing_entity_name AS ObjectName
FROM
    sys.dm_sql_referencing_entities (@fullyQualifiedObjectname
                                     ,'OBJECT'); 

..不返回任何行。

我知道 SQL 依赖关系并不完美,但是否有更可靠的方法来获取此信息,或者“WITH RECOMPILE”选项是否会影响元数据?有没有办法让 SQL Server 重新分析依赖关系?

【问题讨论】:

    标签: stored-procedures sql-server-2008-r2


    【解决方案1】:

    将 exec csp_Mapping_Step_003 WITH RECOMPILE 更改为

    执行 dbo.csp_Mapping_Step_003 WITH RECOMPILE

    我认为 @fullyQualifiedObjectname 中的 'dbo' 正在抛弃它。

    【讨论】:

      猜你喜欢
      • 2010-10-29
      • 1970-01-01
      • 2011-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-23
      • 1970-01-01
      相关资源
      最近更新 更多