2013-11-27 78 views
0

目標的清單:
顯示詳細信息,如果database A使用database B:■table及其column。如果是,列表將顯示在database A中使用的database B:s表和列的名稱。檢查表和列

目的:
主要目的是減少時間。 Database A大約有200 View400 tablesdatabase B大約有154 View165 tables,我不想檢查每個表格和視圖,以便找到它使用的表格和列從database B

問題:
我不知道該怎麼做?

信息:
*我使用SQL server 2008 R2

+1

燦你添加了一些你已經嘗試過的代碼? –

回答

0

您可以使用sys.sql_expression_dependencies如下得到期望的結果:

USE [database A] 
GO 

select 
    object_name(objs.referencing_id) as objectname 
    ,cols.* 
from 
    sys.sql_expression_dependencies objs 
    outer apply sys.dm_sql_referenced_entities (OBJECT_SCHEMA_NAME(objs.referencing_id) + N'.' + object_name(objs.referencing_id), N'OBJECT') as cols 
where objs.referenced_database_name = 'database B' 

您可以參考這裏瞭解更多詳情: http://technet.microsoft.com/en-us/library/bb677315(v=sql.100).aspx