mssql sqlserver 使用sql脚本查询存储过程、视图、函数中脚本内容的方法分享


摘要:
下文讲述使用”系统对象”检索存储过程视图函数等中的脚本内容,如下所示:
实验环境:sqlserver 2008 R2



实现思路:
由于存储过程、函数触发器、视图等对象的定义脚本是存储在syscomments系统对象中,
我们可以通过检索syscomments中内容的方式,获取这些对象中的sql脚本内容。

例:
查询脚本定义中包含数据表”maomao”的存储过程、函数、触发器、视图等对象

 declare @s varchar(300)
 set @s ='maomao'  ----待检索字符串

  SELECT  b.objects.name AS [对象名称],
 a.text as [对象内容]  
FROM syscomments  a
INNER JOIN sys.objects  b ON a.id = b.object_id
WHERE  [text] LIKE N'%'+ @s +'%'