When a function is used as a trigger, the dictionary
TD contains trigger-related values:
contains the event as a string:
contains one of
For a row-level trigger, one or both of these fields contain the respective trigger rows, depending on the trigger event.
contains the trigger name.
contains the name of the table on which the trigger occurred.
contains the schema of the table on which the trigger occurred.
contains the OID of the table on which the trigger occurred.
CREATE TRIGGER command included arguments, they are available in
INSTEAD OF and
ROW, you can return
"OK" from the Python function to indicate the row is unmodified,
"SKIP" to abort the event, or if
UPDATE you can return
"MODIFY" to indicate you've modified the new row. Otherwise the return value is ignored.