提取视图中使用的数据库的名称(引用其他数据库)

时间:2018-05-15 05:01:37

标签: sql sql-server tsql dynamic

我动态创建引用其他数据库的视图(主要是从那里导入数据)

  

使用[RezepteDB]

在这个数据库中我创建了一个像这样的视图

  

从ZutatenDB.dbo.Bla创建视图[dbo] .bla as select *

后来我需要数据库的名称,基于视图。

对于此示例' ZutatenDB'。

我怎么能这样做?一个小函数,用于传递视图名称并返回数据库名称。

1 个答案:

答案 0 :(得分:1)

一种技巧是使用sys.dm_sql_referenced_entities

SELECT *
FROM sys.dm_sql_referenced_entities ('dbo.bla', 'OBJECT');

您可以看到引用的服务器,数据库,架构和对象。