查询引用了某张表的所有存储过程
在开发中,有时需要修改某张表的结构,在修改之前需要知道有哪些存储过程用到了该表,在存储过程少的情况下,我们可以直接一个个去查看,如果存储过程数量非常大,这种方法就不现实了。以下给出了一个简单的查找方法,分享一下,如果有什么错误或考虑不全面的地方,欢迎大家指出。
DECLARE @KeyWord nvarchar(100) SET @KeyWord = '' --设置需要搜索的关键词(如:表名,存储过程名,视图名等) SELECT b.name,a.definition FROM sys.all_sql_modules a INNER JOIN sys.objects b ON a.object_id = b.object_id WHERE b.type = 'P' AND a.definition LIKE '%'+@KeyWord+'%'