2009-05-28 11 views

Respuesta

15
SELECT ROUTINE_NAME, ROUTINE_DEFINITION 
    FROM INFORMATION_SCHEMA.ROUTINES 
    WHERE ROUTINE_DEFINITION LIKE '%your text here%' 
    AND ROUTINE_TYPE='PROCEDURE' 
+1

Whoa. Muy útil. Muchas gracias. –

+2

Tenga en cuenta que la definición de rutina se recorta a 4000 caracteres por si acaso tiene un procedimiento largo. sys.sql_modules no tiene el mismo problema. – PeteT

+0

+1 por ser la forma agnóstica de resolver el problema – Jim

2

Puede buscar sys.sql_modules. La definición contiene el texto de los procedimientos. La vista contiene procedimientos, vistas, udfs, etc. Para restringirse a los procedimientos almacenados, debe unirse con sys.procedure en object_id.

12
SELECT DISTINCT o.name AS Object_Name,o.type_desc 
FROM sys.sql_modules  m 
INNER JOIN sys.objects o 
    ON m.object_id=o.object_id 
WHERE m.definition Like '%Serach_Text%' 
Cuestiones relacionadas