💽

SQL Server でストアドプロシージャの一覧を取得・検索する

2024/07/23に公開

SQL Server で特定の文字列を含むストアドプロシージャの一覧を取得したかったので備忘録としてまとめます。

一覧を取得するストアドプロシージャ

環境内のすべてのストアドプロシージャの一覧を取得したいだけならば、sp_stored_procedures という SQL Server に用意されている組み込みのストアドプロシージャがあるのでそれを使用することができます。
sp_stored_procedures といいつつファンクションの一覧も返すみたいなので注意が必要です。
とはいえプロシージャとファンクションで命名規則が変わっていることの方が多いと思うので特に問題はないかもしれないです

exec sp_stored_procedures

ストアドプロシージャを検索したい場合

sp_stored_procedures の引数に検索文字列を与えることができます。
一番目の引数で、検索したい文字列を指定することができます。LIKE 句で使用するような % を用いた曖昧検索も可能です。

exec sp_stored_procedures '%検索したい文字列%', 'プロシージャのオーナー', 'プロシージャの環境'

参考

https://learn.microsoft.com/ja-jp/sql/relational-databases/system-stored-procedures/sp-stored-procedures-transact-sql?view=sql-server-ver16

Discussion