42.7. Triggers sur événements avec PL/Perl
              
            
            
              PL/Perl peut être utilisé pour écrire des fonctions trigger sur
              événement. Dans ce type de fonctions, la référence hachée
              $_TD contient des informations sur
              l'évenement du trigger. $_TD est une
              variable globale, qui obtient une valeur locale séparée à
              chaque invocation du trigger. Les champs disponibles via
              $_TD sont :
            
            
              
                - 
                  $_TD->{event}
                
- 
                  
                    Le nom de l'événement pour lequel le trigger a été
                    déclenché.
                   
- 
                  $_TD->{tag}
                
- 
                  
                    La balise de la commande pour laquelle le trigger a été
                    déclenché.
                   
 
            
              Le code de retour de la procédure trigger est ignoré.
            
            
              Voici un exemple de fonction trigger sur événement, illustrant
              certaines des informations ci-dessus :
            
            
CREATE OR REPLACE FUNCTION perlsnitch() RETURNS event_trigger AS $$
  elog(NOTICE, "perlsnitch: " . $_TD->{event} . " " . $_TD->{tag} . " ");
$$ LANGUAGE plperl;
CREATE EVENT TRIGGER perl_a_snitch
    ON ddl_command_start
    EXECUTE PROCEDURE perlsnitch();