PostgreSQLLa base de données la plus sophistiquée au monde.

44.36. pg_trigger

Le catalogue pg_trigger stocke les informations concernant les déclencheurs des tables. Voir la commande CREATE TRIGGER pour plus d'informations.

Tableau 44.36. Colonnes de pg_trigger

Nom Type Références Description
tgrelid oid pg_class.oid Table sur laquelle porte le déclencheur
tgname name   Nom du déclencheur (doit être unique parmi les déclencheurs d'une table)
tgfoid oid pg_proc.oid Fonction à appeler
tgtype int2   Masque de bits identifiant les conditions du déclencheur
tgenabled char   Contrôle l'exécution du trigger suivant le mode session_replication_role. O = le trigger se déclenche dans les modes « origin » et « local », D = le trigger est désactivé, R = le trigger s'exécute en mode « replica », A = le trigger s'exécute à chaque fois.
tgisconstraint bool   Vrai si le déclencheur est un « trigger de contrainte »
tgconstrname name   Nom de la contrainte s'il s'agit d'un « trigger de contrainte »
tgconstrrelid oid pg_class.oid La table référencée par une contrainte d'intégrité référentielle
tgconstraint oid pg_constraint.oid L'entrée pg_constraint possédant le trigger, si elle existe
tgdeferrable bool   Vrai si le déclencheur contrainte est retardable
tginitdeferred bool   Vrai si le déclencheur de contrainte est initialement retardé
tgnargs int2   Nombre de chaînes d'arguments passées à la fonction du déclencheur
tgattr int2vector   Actuellement inutilisé
tgargs bytea   Chaînes d'arguments à passer au déclencheur, chacune terminée par un NULL

[Note]

Note

Quand tgconstraint est différent de zéro, tgisconstraint doit valoir true et tgconstrname, tgconstrrelid, tgdeferrable, tginitdeferred sont redondants avec l'entrée pg_constraint référencée. Ces champs sont conservés parce que les déclencheurs de contraintes « autonomes » sans entrée pg_constraint correspondante sont supportés.

[Note]

Note

pg_class.relhastriggers doit valoir true si la table possède au moins un trigger dans ce catalogue.