PostgreSQL 9.3.2文書 | ||||
---|---|---|---|---|
前のページ | 上に戻る | 第 43章PL/Python - Python手続き言語 | 次のページ |
トリガとして関数を使用した場合、TD辞書にトリガに関連した値が格納されます。
次のイベントが文字列として格納されます。 INSERT、UPDATE、DELETE、TRUNCATE
BEFORE、AFTER、またはINSTEAD OFのいずれかが格納されます。
ROWまたはSTATEMENTが格納されます。
行レベルトリガにおいてトリガイベントに依存して、これらのフィールドの片方または両方に対応するトリガ行が格納されます。
トリガ名が格納されます。
トリガの発生元のテーブルの名前が格納されます。
トリガの発生元のテーブルのスキーマが格納されます。
トリガの発生元テーブルのOIDが格納されます。
CREATE TRIGGERに引数が含まれていた場合、その引数はTD["args"][0]からTD["args"][n-1]までの範囲で使用することができます。
TD["when"]がBEFOREまたはINSTEAD OFで、かつ、TD["level"]がROWの場合、Pythonの関数から、行が変更されないことを示すNoneまたは"OK"、イベントを中断したことを示す"SKIP"を返すことができます。 また、TD["event"]がINSERTまたはUPDATEの場合、行を変更したことを示す"MODIFY"を返すことができます。 さもなければ、戻り値は無視されます。