在SQL Server 2005上,您应该能够通过右键单击对象并选择“查看依赖项”来在Manglement Studio中查找依赖项。该对话框使您可以选择“依赖于此的对象”(我正在调用的是下游)或“依赖于此的对象”(上游)。
两个方向似乎都适用于Table对象,而View对象似乎在上游方向上报告了良好的信息。但是,View的下游列表似乎只包含View本身 - 即使我知道还有其他依赖项(在本例中为另一个视图)。
有没有办法可以找到这些信息?如果我有一个关于哪个目标的线索,我很乐意编写针对系统表的查询....
答案 0 :(得分:4)
尝试:
sp_depends YourViewName
如果没有结果,请删除并重新创建您的视图,然后重试。删除和重新创建可能适用于GUI但我没有尝试
这有点慢(而不是最好的查询),但试一试:
DECLARE @Search varchar(300)
SET @Search='yourViewName'
SELECT DISTINCT
LEFT(so.name, 120) AS Object_Name,
"object_type"=left(
case so.type
when 'U' then 'Table - User'
when 'S' then 'Table - System'
when 'V' then 'Table - View'
when 'TR' then 'Trigger'
when 'P' then 'Stored Procedure'
when 'C' then 'Constraint - Check'
when 'D' then 'Default'
when 'K' then 'Key - Primary'
when 'F' then 'Key - Foreign'
when 'L' then 'Log'
when 'R' then 'Rule'
when 'RF' then 'Replication Filter stp'
else '<<UNKNOWN '''+so.type+'''>>'
end -- case so.type
,50)
FROM syscomments sc
INNER JOIN sysobjects so
ON so.id = sc.id
WHERE
text Like '%'+@Search+'%'
ORDER BY
2,1