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
Type Description |
---|
Identifiant de ligne |
Table sur laquelle porte le déclencheur |
Trigger parent à partir duquel ce trigger est cloné, zéro si ce n'est pas un clone ; ceci survient quand les partitions sont créées ou attachées à une table partitionnée. |
Nom du déclencheur (doit être unique parmi les déclencheurs d'une table) |
Fonction à appeler |
Masque de bits identifiant les conditions de déclenchement |
Contrôle l'exécution du trigger suivant le mode session_replication_role.
|
Vrai si le trigger est généré en interne (habituellement pour
forcer la contrainte identifiée par
|
La table référencée par une contrainte d'intégrité référentielle |
L'index supportant une contrainte unique, clé primaire, clé d'intégrité référentielle, contrainte d'exclusion |
L'entrée |
Vrai si le déclencheur contrainte est retardable |
Vrai si le déclencheur de contrainte est initialement retardé |
Nombre de chaînes d'arguments passées à la fonction du déclencheur |
numéros de colonne, si le trigger est spécifique à la colonne ; sinon un tableau vide |
Chaînes d'arguments à passer au déclencheur, chacune terminée par un NULL |
Arbre d'expression (d'après la représentation de
|
Nom de la clause |
Nom de la clause |
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
.
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.
pg_class.relhastriggers
doit valoir true si la relation
possède au moins un trigger dans ce catalogue.