PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 14.15 » Programmation serveur » PL/Tcl -- Langage de procédures Tcl » Fonctions trigger sur événement en PL/Tcl

44.7. Fonctions trigger sur événement en PL/Tcl

Les fonctions triggers sur événement peuvent être écrites en PL/Tcl. PostgreSQL requiert qu'une fonction qui doit être appelée comme trigger sur événement doit être déclarée comme une fonction sans arguments et comme renvoyant le type event_trigger.

L'information provenant du gestionnaire des triggers est passée au corps de la fonction avec les variables suivantes :

$TG_event

Le nom de l'événement pour lequel le trigger a été déclenché.

$TG_tag

La balise de la commande pour laquelle le trigger a été déclenché.

La valeur de retour de la fonction trigger est ignorée.

Voici un petit exemple de fonction trigger sur événement qui lève un message NOTICE à chaque fois qu'une commande supportée est exécutée :

CREATE OR REPLACE FUNCTION tclsnitch() RETURNS event_trigger AS $$
  elog NOTICE "tclsnitch: $TG_event $TG_tag"
$$ LANGUAGE pltcl;

CREATE EVENT TRIGGER tcl_a_snitch ON ddl_command_start EXECUTE FUNCTION tclsnitch();