首页 > 解决方案 > 如何识别存储过程中视图的使用列

问题描述

数据库D1中有一个视图View1与列Column1Column2Column3

视图View1在存储过程PROC1中的另一个数据库D2中使用 存储过程PROC1
中 仅使用Column2,而未使用其他列

视图View1在存储过程 PROC2 中的另一个数据库 D3 中使用Column1Column2存储过程PROC2中使用,而其他列未使用

我们如何通过查询来识别存储过程PROC1PROC2中使用了View1的哪一列。

我有近 100 个视图在多个数据库中使用,我需要知道哪些列被各自数据库中的存储过程使用。

标签: sqlsql-server

解决方案


你可以执行:

exec sp_depends '视图名称'

这将返回所有引用该视图的对象(包括过程)。您必须检查命名的 proc 本身以确定该过程中使用了哪些列。


推荐阅读