FirebirdSQL logo
 Responsables du traitement des données(DML)fonctions scalaires 

Variables disponibles dans l’espace de noms DDL_TRIGGER

Pendant que le déclencheur DDL est en cours d’exécution, l’espace de noms DDL_TRIGGER est disponible pour être utilisé dans la fonction RDB$GET_CONTEXT. Son utilisation est également autorisée dans les procédures et fonctions stockées appelées par les déclencheurs DDL.

Le contexte DDL_TRIGGER fonctionne comme une pile. Avant que le trigger DDL ne soit déclenché, les valeurs liées à la commande en cours d’exécution sont placées sur cette pile. Lorsque le trigger est terminé, les valeurs sont éjectées.Ainsi, dans le cas d’instructions DDL en cascade, lorsque chaque commande DDL utilisateur excite un déclencheur DDL, et que ce déclencheur déclenche d’autres commandes DDL, avec EXECUTE STATEMENT, les valeurs des variables dans l’espace de noms DDL_TRIGGER correspondront à la commande qui a déclenché le dernier déclencheur DDL dans la pile d’appels.

Variables disponibles dans l’espace de noms DDL_TRIGGER:* EVENT_TYPE — type d’événement(CREATE, ALTER, DROP)
  • OBJECT_TYPE — type d’objet (TABLE, VIEW etc.)

  • DDL_EVENT — nom de l’événement (<ddl event item>),

    <ddl event item> = EVENT_TYPE || ' ' || OBJECT_TYPE

  • OBJECT_NAME — nom de l’objet de métadonnées

  • SQL_TEXT — Texte de la requête SQL

Création d’un déclencheur

Pour plus d’informations sur la création de déclencheurs, reportez-vous àCREATE TRIGGER,CREATE OR ALTER TRIGGER,RECREATE TRIGGER dans le chapitre "Instructions de définition de données DDL".