FirebirdSQL logo

Exemples

Example 1. Création d’un nouveau déclencheur ou modification d’un déclencheur existant
CREATE OR ALTER TRIGGER set_cust_no
ACTIVE BEFORE INSERT ON customer POSITION 0
AS
BEGIN
  IF (NEW.cust_no IS NULL) THEN
    NEW.cust_no = GEN_ID(cust_no_gen, 1);
END

DROP TRIGGER

Utilisé pour:

Suppression d’un déclencheur existant.

Disponible en

DSQL, ESQL

Syntaxe
DROP TRIGGER trigname
Table 1. Paramètres de la commande DROP TRIGGER
Paramètre Description

trigname

Nom du déclencheur.

L’instruction `DROP TRIGGER' supprime un trigger existant.

docnext count = 4

Qui peut supprimer les déclencheurs ?

Les déclencheurs DML peuvent supprimer :

  • Administrateurs.

  • Propriétaire de la table (vue) ;

  • Les utilisateurs ayant le privilège `ALTER ANY {TABLE | VIEW}'.

Les déclencheurs pour les événements de la base de données et les déclencheurs d’événements pour les changements de métadonnées peuvent être supprimés :

  • Administrateurs.

  • Propriétaire de la base de données ;

  • Un utilisateur avec le privilège `ALTER DATABASE'.

Exemples

Example 1. Supprimer le Trigger
DROP TRIGGER set_cust_no;
Voir aussi :

CREATE TRIGGER, ALTER TRIGGER.

RECREATE TRIGGER

Utilisé pour:

Créez un nouveau déclencheur ou recréez un déclencheur existant.

Disponible en

DSQL, ESQL

Syntaxe
RECREATE TRIGGER trigname {
    <relation_trigger_legacy>
  | <relation_trigger_sql2003>
  | <database_trigger>
  | <ddl_trigger> }
<routine-body>

Description complète de l'opérateur Voir CREATE TRIGGER.

L’opérateur RECREATE TRIGGER crée un nouveau trigger si le trigger avec le nom spécifié n’existe pas, sinon l’opérateur RECREATE TRIGGER essaiera de le supprimer et d’en créer un nouveau.

Exemples

Example 1. Créer ou recréer un trigger
RECREATE TRIGGER set_cust_no
ACTIVE BEFORE INSERT ON customer POSITION 0
AS
BEGIN
  IF (NEW.cust_no IS NULL) THEN
    NEW.cust_no = GEN_ID(cust_no_gen, 1);
END