プロシージャの更新日付を見るときによく使うselect文なので、メモっておく
業務で、一時やたらとプロシージャがデグレることがあり、しょっちゅう使ってた・・・。
プロシージャの内容を確認する
もっといろんな情報が(文字コードとかプロシージャの内容とか)見れるけど、たくさんありすぎるので、個人的に普段はこれくらいまでカラムを絞ることが多いです。
select
ROUTINE_NAME -- プロシージャ名
, ROUTINE_SCHEMA -- スキーマ名
, LAST_ALTERED -- 最終更新日時
from information_schema.ROUTINES
where
ROUTINE_SCHEMA = 'testSchema' -- スキーマ名を指定する
and ROUTINE_TYPE = 'PROCEDURE' -- プロシージャだけを検索する
and ROUTINE_NAME like 'p_%' -- プロシージャの名称部分一致
order by ROUTINE_NAME
;
information_schema.ROUTINESとは
プロシージャやファンクションの一覧を保持しているテーブル。
普通のselect文なので、whereもorder byなどが使えるのが便利
プロシージャの一覧を見るには
SHOW FUNCTION STATUS;
も十分使えるけど、やっぱりwhere句が使える方が捗る