以下のストアドプロシージャを見つけるにはどうすればいいですか? ? 質問する

以下のストアドプロシージャを見つけるにはどうすればいいですか? ? 質問する

SQL Server 2008 で、データベース フィールド名または変数名を含むストアド プロシージャを検索する必要があります。

ベストアンサー1

これは最初の 4,000 文字以降のすべてのテキストを切り捨てます。

SELECT ROUTINE_NAME, ROUTINE_DEFINITION
    FROM INFORMATION_SCHEMA.ROUTINES 
    WHERE ROUTINE_DEFINITION LIKE '%Foo%' 
    AND ROUTINE_TYPE='PROCEDURE'

SELECT OBJECT_NAME(id) 
    FROM SYSCOMMENTS 
    WHERE [text] LIKE '%Foo%' 
    AND OBJECTPROPERTY(id, 'IsProcedure') = 1 
    GROUP BY OBJECT_NAME(id)

SELECT OBJECT_NAME(object_id)
    FROM sys.sql_modules
    WHERE OBJECTPROPERTY(object_id, 'IsProcedure') = 1
    AND definition LIKE '%Foo%'

おすすめ記事