ねもぷらす

ふぁいんでぃんぐねもの日記。プログラミングとか育児とか

オラクルのトリガの内容の確認方法

CREATE TRIGGER で作成したトリガを確認する方法。
「Oralce trigger 確認」でググったら、以下のサイトが1位にヒット。

SELECT
    table_name,
    status,
    owner,
    trigger_body
FROM
    user_triggers
WHERE
     trigger_name = '確認したいトリガ名';


知りたいのはこの方法じゃない。
USER_TRIGGERS の TRIGGER_BODY は LONG 型で、CREATE TRIGGER で作成したトリガが1行に収まるらしいけど上記の方法では全文を取得することは出来ませんでした。
で、しばし悩んでいたら下の方法をご教授いただきました。

SELECT
    *
FROM
    user_source
WHERE
    name = '確認したいトリガ名'
ORDER BY
    name, line

USER_SOURCE には、ログインしているユーザが所有する全てのストアド・オブジェクトのテキスト・ ソースが1行ずつ格納されています。

SQL> DESC user_source
Name                         Type
 ---------------------------- --------------
 NAME                         VARCHAR2(30)
 TYPE                         VARCHAR2(12)
 LINE                         NUMBER
 TEXT                         VARCHAR2(4000)