Click here to Skip to main content
15,885,278 members
Articles / Database Development / SQL Server
Alternative
Tip/Trick

Find all Stored Procedures having a given text in it

Rate me:
Please Sign up or sign in to vote.
5.00/5 (2 votes)
25 Oct 2011CPOL 8K   1   2
SELECT DISTINCT so.name FROM dbo.sysobjects so inner join .dbo.syscomments sc on so.id=sc.id WHERE so.xtype='P' AND sc.text like '%SearchString%'Much faster!
SQL
SELECT DISTINCT so.name 
FROM dbo.sysobjects so 
		inner join .dbo.syscomments sc on so.id=sc.id 
WHERE so.xtype='P' AND sc.text like '%SearchString%'

Much faster!

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior) Multimos
Spain Spain
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
Generalthank you very much Pin
Jaume Pascual26-Oct-11 21:14
Jaume Pascual26-Oct-11 21:14 
GeneralIn some rare cases this query will return in-correct result,... Pin
Basavaraj P Biradar26-Oct-11 5:29
Basavaraj P Biradar26-Oct-11 5:29 
In some rare cases this query will return in-correct result, because in syscomments table the text column is of type nvarchar(4000). If the sp text is exceeding this limit, sp text is split and stored in the multiple rows, and if the seach string is at the spliting position, then search will fail to return such stored procedure name.

Also in the query you are not getting the sp content and that is the reason you are assuming it is much faster. But when I executed below query, found that it is much slower and also leading to lot of logical reads also...

SET STATISTICS IO ON
SET STATISTICS TIME ON

SELECT DISTINCT so.name
FROM dbo.sysobjects so
inner join .dbo.syscomments sc on so.id=sc.id
WHERE so.xtype='P' AND sc.text like '%SearchString%'


SELECT OBJECT_NAME(object_id)
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE '%SearchString%'

SET STATISTICS IO OFF
SET STATISTICS TIME OFF

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.