Documentation PostgreSQL 10.23 » Internes » Catalogues système » pg_trigger
Précédent Niveau supérieur Suivant
51.55. pg_transform Sommaire 51.57. pg_ts_config

51.56. pg_trigger

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

Tableau 51.56. Colonnes de pg_trigger

NomTypeRéférencesDescription
oidoidIdentifiant de ligne (attribut caché ; doit être sélectionné explicitement)
tgrelidoidpg_class.oidTable sur laquelle porte le déclencheur
tgnamename Nom du déclencheur (doit être unique parmi les déclencheurs d'une table)
tgfoidoidpg_proc.oidFonction à appeler
tgtypeint2Masque de bits identifiant les conditions de déclenchement
tgenabledchar 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.
tgisinternalboolVrai si le trigger est généré en interne (habituellement pour forcer la contrainte identifiée par tgconstraint)
tgconstrrelidoidpg_class.oidLa table référencée par une contrainte d'intégrité référentielle
tgconstrindidoidpg_class.oidL'index supportant une contrainte unique, clé primaire, clé d'intégrité référentielle, contraint d'exclusion
tgconstraintoidpg_constraint.oidL'entrée pg_constraint associé au trigger, si elle existe
tgdeferrableboolVrai si le déclencheur contrainte est retardable
tginitdeferredboolVrai si le déclencheur de contrainte est initialement retardé
tgnargsint2Nombre de chaînes d'arguments passées à la fonction du déclencheur
tgattrint2vectorpg_attribute.attnumnuméros de colonne, si le trigger est spécifique à la colonne ; sinon un tableau vide
tgargsbytea Chaînes d'arguments à passer au déclencheur, chacune terminée par un NULL
tgqualpg_node_treeArbre d'expression (d'après la représentation de nodeToString() pour la condition WHEN du trigger, ou NULL si aucune
tgoldtablenameNom de la clause REFERENCING pour OLD TABLE, ou NULL si aucun
tgnewtablenameNom de la clause REFERENCING pour NEW TABLE, ou NULL si aucun

Actuellement, les triggers spécifiques par colonne sont supportés seulement pour les événements UPDATE et, du coup, tgattr est valable seulement pour ce type d'événements. tgtype pourrait contenir des informations pour d'autres types d'événement mais ils sont supposés valides pour la table complète, quel que soit le contenu de tgattr.

Note

Quand tgconstraint est différent de zéro, tgconstrrelid, tgconstrindid, tgdeferrable et tginitdeferred sont grandement redondants avec l'entrée pg_constraint référencée. Néanmoins, il est possible qu'un trigger non déferrable soit associé à une contrainte déferrable : les contraintes de clé étrangère peuvent avoir quelques triggers déferrables et quelques triggers non déferrables.

Note

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

AltStyle によって変換されたページ (->オリジナル) /