Mic*_*per 18 sql sql-server stored-procedures sql-server-2008
我想找到使用特定表的所有存储过程.数据库中有很多存储过程,因此检查每个过程是不可行的.
有没有办法使用搜索查询,以便我可以找到存储过程?
我试过这段代码:
SELECT distinct so.name
FROM syscomments sc
INNER JOIN sysobjects so ON sc.id=so.id
WHERE sc.TEXT LIKE '% RejectionReason %'
Run Code Online (Sandbox Code Playgroud)
RejectionReason我的表名在哪里,但它显示了所有RejectionReason用作列名的过程,因此不起作用.
Car*_*lla 21
SELECT o.name, o.type_desc, p.name, p.type_desc
FROM sys.sql_dependencies d
INNER JOIN sys.objects o
ON d.object_id = o.object_id
INNER JOIN sys.objects p
ON d.referenced_major_id = p.object_id
AND o.name = 'RejectionReason'
Run Code Online (Sandbox Code Playgroud)
要么
SELECT o.name, t.TABLE_NAME, c.text
FROM syscomments c
JOIN sysobjects o
ON c.id = o.id
JOIN INFORMATION_SCHEMA.Tables t
ON c.text LIKE '%RejectionReason%'
Run Code Online (Sandbox Code Playgroud)
要么
EXEC sp_depends @objname = N'RejectionReason';
Run Code Online (Sandbox Code Playgroud)
如果这些都没有帮助你查看这个博客:http: //blog.sqlauthority.com/2010/02/04/sql-server-get-the-list-of-object-dependencies-sp_depends-and-information_schema-routines-和-SYS-dm_sql_referencing_entities /
| 归档时间: |
|
| 查看次数: |
90101 次 |
| 最近记录: |