2009-05-28 18 views

答えて

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

Whoa。非常に便利。本当にありがとう。 –

+2

プロシージャーが長い場合に備えて、routine_definitionは4000文字で切り捨てられます。 sys.sql_modulesには同じ問題はありません。 – PeteT

+0

+1問題の不可解な方法であるため、 – Jim

2

sys.sql_modulesを検索することができます。定義には手続きのテキストが含まれています。ビューにはプロシージャ、ビュー、udfsなどが含まれます。ストアドプロシージャに制限するには、object_idのsys.procedureと結合する必要があります。

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%' 
関連する問題