トリガとして関数を使用した場合、TD辞書にトリガに関連した値が格納されます。 トリガの行は、トリガイベントに応じて、TD["new"]、TD["old"]のどちらかまたは両方に格納されます。 TD["event"]には、(INSERT、UPDATE、DELETEまたはUNKNOWNという)文字列としてイベントが格納されます。 TD["when"]には、BEFORE、AFTER、およびUNKNOWNのいずれかが格納されます。 TD["name"]には、トリガ名称が、TD["table_name"]にはトリガの発生元のテーブルの名前が、TD["table_schema"]にはトリガの発生元のテーブルのスキーマが格納されます。 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"を返すことができます。