mssql sqlserver 查找用户自定义存储过程中包含特定字符的方法


摘要:
在日常工作中,我们经常遇到一个问题:“需要检索哪些存储过程包含某某列或某某变量”这样的需求,那么下文就介绍一种检索存储过程内容的方法分享


实现思路:
1. 通过检索 syscomments 表中的text字段中的内容达到检索存储过程内容的目的
2. 通过检索 INFORMATION_SCHEMA.ROUTINES 表中 ROUTINE_DEFINITION列达到检索存储过程的目的

----检索存储过程包含 "maomao365" 这几个字符 
go
create proc pr_test
as
begin  print 'maomao365.com'   end
go
select name  as [存储过程名称]
from sysobjects o, syscomments s 
where o.id = s.id 
and text like '%maomao365%' 
and o.xtype = 'P' 

 
SELECT ROUTINE_NAME as [存储过程名称],
ROUTINE_DEFINITION  as [存储过程内容]
FROM INFORMATION_SCHEMA.ROUTINES 
WHERE ROUTINE_DEFINITION LIKE '%maomao365%' 
AND ROUTINE_TYPE='PROCEDURE'
go
drop proc pr_test 
mssql_sqlserver_存储过程包含字符检索方法_9592

mssql_sqlserver_存储过程包含字符检索方法_9592