トリガ関数

PostgreSQL 8.0.0 文書
前のページ | 巻戻し | 第 38章PL/Python - Python 手続き言語 | 早送り | 次のページ

# 38.2. トリガ関数

トリガとして関数を使用した場合、`TD`辞書にトリガに関連した値が格納されます。 トリガの行は、トリガイベントに応じて、`TD["new"]`、`TD["old"]`のどちらかまたは両方に格納されます。 `TD["event"]`には、(`INSERT`、`UPDATE`、`DELETE`または`UNKNOWN`という)文字列としてイベントが格納されます。 `TD["when"]`には、`BEFORE`、`AFTER`、および`UNKNOWN`のいずれかが格納されます。 `TD["level"]`には、`ROW`、`STATEMENT`、および`UNKNOWN`のいずれかが格納されます。 `TD["name"]`にはトリガの名前が、`TD["relid"]`にはトリガの発生元テーブルのOIDが格納されます。 `CREATE TRIGGER`に引数が含まれていた場合、その引数は`TD["args"][0]`から`TD["args"][(n -1)]`までとして使用することができます。

`TD["when"]`が`BEFORE`の場合、Pythonの関数から、行が変更されないことを示す`None`または`"OK"`、イベントを中断したことを示す`"SKIP"`、または行を変更したことを示す`"MODIFY"`を返すことができます。

前のページ | ホーム | 次のページ
PL/Python - Python 手続き言語 | 上に戻る | データベースアクセス