Du angav inte vilken version av SQL Server du använder. Jag antar 2000 men om du är på 2005 eller senare bör du titta på sys.sql_modules katalogvy och/eller OBJECT_DEFINITION() fungera. Som ett snabbt exempel:
SELECT SCHEMA_NAME(schema_id) +'.'+ name
FROM sys.objects
WHERE OBJECT_DEFINITION(object_id) LIKE '%' + @Search + '%';
-- or
SELECT OBJECT_SCHEMA_NAME(object_id) +'.'+ OBJECT_NAME(object_id)
FROM sys.sql_modules
WHERE [definition] LIKE '%' + @Search + '%';
Du kanske också vill kolla in följande StackOverflow-tråd om RedGates nya och gratis SQL Search-verktyg och några alternativa tillvägagångssätt:
https://stackoverflow. com/questions/2187763/what-other-products-are-similar-to-redgates-sql-search/
Om du verkligen har fastnat för 2000 så kan den här artikeln jag skrev för nästan 10 år sedan fortfarande vara relevant och användbar (inklusive tillmötesgående för 4K-bitproblemet som Matt nämnde):
http://databases .aspfaq.com/database/how-do-i-find-a-stored-procedure-containing-text.html