Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Text search in stored proc SQL Server

Tags:

sql-server

Does any one know the script to use for text search in SQL Server? I would like to search a text from all the stored proc inside the SQL Server, does anyone know what is the script I should use?

like image 716
Jin Yong Avatar asked Jan 27 '11 05:01

Jin Yong


3 Answers

INFORMATION_SCHEMA.ROUTINES or syscomments are not reliable.

The text field is nvarchar(4000) for both (over multiple rows syscomments only). So your search text can be lost on the boundary for a syscomments or never found for INFORMATION_SCHEMA.ROUTINES

sys.sql_modules.definition is nvarchar(max)

SELECT
    OBJECT_NAME(object_id)
FROM
    sys.sql_modules
WHERE
    definition LIKE '%mytext%'

Edit, Oct 2011

Bringing this answer up to date.

Red Gate SQL Search is a free SSMS plug in that is quite useful.

like image 65
gbn Avatar answered Oct 15 '22 11:10

gbn


You can use as well:

select distinct object_name(id) from sys.syscomments where text like '%SearchTextHere%'
like image 36
ashish.chotalia Avatar answered Oct 15 '22 11:10

ashish.chotalia


Updated: There are several equivalent ways. Here's one:

SELECT 
    OBJECT_NAME(object_id) 
FROM 
    sys.sql_modules 
WHERE 
    Definition LIKE '%searchtext%' 
    AND OBJECTPROPERTY(object_id, 'IsProcedure') = 1 
like image 2
Mitch Wheat Avatar answered Oct 15 '22 12:10

Mitch Wheat