在一组 SQL 个服务器视图中搜索表格使用

Search a group of SQL Server views for tables use

我正在尝试搜索一组视图以查看它们是否包含某些 table。

例如:假设我有大约 30 个视图,我想看看他们是否使用这个特定的 table。我该怎么做?

我想不出该怎么做。任何人有任何想法可以为我指明正确的方向吗?

我们正在使用 SQL Server Management Studio v18

你可以 select 这个来自 INFORMATION_SCHEMA.VIEWS:

SELECT * 
FROM INFORMATION_SCHEMA.VIEWS
WHERE VIEW_DEFINITION LIKE '%Test%';

MS SQL view

SQL 服务器维护一个对象引用列表,您可以通过多种方式查询精确的 table(或任何所需的对象),例如:

select o.[Name]
from sys.sql_expression_dependencies d
join sys.objects o on o.object_id=d.referencing_id and o.type='V'
where referenced_id = OBJECT_ID(N'dbo.tablename');