我想查找所有使用了sp_a 的存储过程。右击sp_a-view dependencies- 选择 view objects that depend on [sp_a] 你会发现,有时候结果不能够全部列出来,不能够找到所有使用了sp_a的其他存储过程。
上图说明吧。
上图存储过程调用了mup_geta(我把和项目相关的命名都擦除掉了)
上图通过sqlserver 图形管理器自带的功能查看依赖于mup_geta的对象。
结果有点雷人,居然没有列出mup_getb 来(我使用的是sql server 2005)
下面是解决方法
方法1:
打开数据库管理界面->右击数据库->tasks->generate scripts->.....
导出所有存储过程到文件中,然后ctrl+f查找
方法2:
代码如下:
select routine_name, routine_definition
from information_schema.routines
where routine_definition like '%text%'
and routine_type='procedure'
将text替换成你要查找的内容
方法3:
代码如下:
select name
from sysobjects o, syscomments s
where o.id = s.id
and text like '%text%'
and o.xtype = 'p'
将text替换成你要查找的内容
完毕