The catalog pg_trigger stores triggers on tables and views. See CREATE TRIGGER for more information.
Table 45-44. pg_trigger Columns
|tgrelid||oid||pg_class.oid||The table this trigger is on|
|tgname||name||Trigger name (must be unique among triggers of same table)|
|tgfoid||oid||pg_proc.oid||The function to be called|
|tgtype||int2||Bit mask identifying trigger firing conditions|
|tgenabled||char||Controls in which session_replication_role modes the trigger fires. O = trigger fires in "origin" and "local" modes, D = trigger is disabled, R = trigger fires in "replica" mode, A = trigger fires always.|
|tgisinternal||bool||True if trigger is internally generated (usually, to enforce the constraint identified by tgconstraint)|
|tgconstrrelid||oid||pg_class.oid||The table referenced by a referential integrity constraint|
|tgconstrindid||oid||pg_class.oid||The index supporting a unique, primary key, or referential integrity constraint|
|tgconstraint||oid||pg_constraint.oid||The pg_constraint entry associated with the trigger, if any|
|tgdeferrable||bool||True if constraint trigger is deferrable|
|tginitdeferred||bool||True if constraint trigger is initially deferred|
|tgnargs||int2||Number of argument strings passed to trigger function|
|tgattr||int2vector||pg_attribute.attnum||Column numbers, if trigger is column-specific; otherwise an empty array|
|tgargs||bytea||Argument strings to pass to trigger, each NULL-terminated|
|tgqual||pg_node_tree||Expression tree (in
Currently, column-specific triggering is supported only for UPDATE events, and so tgattr is relevant only for that event type. tgtype might contain bits for other event types as well, but those are presumed to be table-wide regardless of what is in tgattr.
Note: When tgconstraint is nonzero, tgconstrrelid, tgconstrindid, tgdeferrable, and tginitdeferred are largely redundant with the referenced pg_constraint entry. However, it is possible for a non-deferrable trigger to be associated with a deferrable constraint: foreign key constraints can have some deferrable and some non-deferrable triggers.
Note: pg_class.relhastriggers must be true if a relation has any triggers in this catalog.
Please use this form to add your own comments regarding your experience with particular features of PostgreSQL, clarifications of the documentation, or hints for other users. Please note, this is not a support forum, and your IP address will be logged. If you have a question or need help, please see the faq, try a mailing list, or join us on IRC. Note that submissions containing URLs or other keywords commonly found in 'spam' comments may be silently discarded. Please contact the webmaster if you think this is happening to you in error.
Proceed to the comment form.