2013-08-30 42 views
0

試圖動態獲取存儲過程中引用的對象。下面的代碼在動態時不起作用存儲過程中的引用實體

DECLARE @procname VARCHAR(50) = 'GetTempBondInformation' 
SELECT QUOTENAME('dbo.' + @procname ,'''') 
SELECT DISTINCT referenced_entity_name FROM sys.dm_sql_referenced_entities(QUOTENAME('dbo.' + @procname ,''''), 'OBJECT') 

下面的代碼工作正常。

SELECT DISTINCT referenced_entity_name FROM sys.dm_sql_referenced_entities('dbo.GetTempBondInformation', 'OBJECT') 

任何線索?

回答

0

試試這個:

(去掉引號)

DECLARE @procname VARCHAR(50) = 'GetTempBondInformation' 
SELECT DISTINCT 
    referenced_entity_name 
FROM  
    sys.dm_sql_referenced_entities('dbo.' + @procname, 'OBJECT') 
+1

感謝普里特僧伽 – Sreedhar