Trigger (-TR or -TRIG)

Cette commande n'est disponible que pour les adaptateurs de base de données Oracle et Microsoft SQL Server.

Utilisez la commande d'adaptateur Trigger (-TRIG) pour qu'une source spécifie la chaîne de déclenchement d'une spécification de déclencheur. Pour plus d'informations sur la spécification des déclencheurs de base de données, voir Documentation Database Interface Designer.

La commande d'adaptateur Trigger (-TRIG) peut être utilisée comme spécification de déclencheur pour une requête qui n'a pas de déclencheur défini dans Database Interface Designer. Elle peut également être utilisée pour remplacer des conditions qui sont déjà définies dans une spécification de déclencheur associée à une requête.

Le caractère de barre verticale (|) est utilisé pour représenter l'instruction OR et le caractère de l'esperluette (&) pour représenter l'instruction AND. La combinaison des caractères &| représente une instruction AND/OR. La valeur insérée en tant que when_clause doit être une syntaxe SQL valide avec table.column_name placé entre crochets.


-TRIG {[R] [I tablename1 [{&||} tablename2]...]
   [D tablename1 [{&||} tablename2]...
   [U tablename1 [{&||} tablename2]...]}
   [W when_clause [[table.column_name1]]...]
Valeur
Description
R
Cela indique que le déclenchement par ligne est utilisé par opposition au déclenchement par table.
I tablename1 [{&||}tablename2]...
L'insertion de lignes dans la ou les tables spécifiées sert de déclencheur d'événement d'entrée à la mappe et utilise cette requête en tant que source.
D tablename1 [{&||}tablename2]...
La suppression de lignes de la ou des tables spécifiées sert de déclencheur d'événement d'entrée à la mappe et utilise cette requête en tant que source.
U tablename1 [{&||}tablename2]...
La mise à jour des valeurs dans les colonnes spécifiées sert de déclencheur d'événement d'entrée à la mappe et utilise cette requête en tant que source.
W when_clause [[table.column_name1]...]
Il s'agit d'une expression qui sera évaluée une fois que les autres événements se seront produits. Si cette expression a pour résultat la valeur TRUE, les conditions de la spécification de déclencheur sont remplies et la mappe est lancée. Si l'expression n'est pas TRUE, l'état est restauré tel qu'il était avant qu'un événement se produise.

Cette expression peut contenir des expressions SQL valides pour la base de données cible. Si des colonnes de base de données sont référencées, le nom de colonne doit être qualifié avec le nom de la table et placé entre crochets.

Voici un exemple de spécification d'événements et de conditions de déclencheur qui utilise l'adaptateur :


-TR I ACCT_INFO | TRANSACTIONS D ACCT_INFO U ACCT_INFO
W [TRANSACTION.TRANS_TYPE]='PY'

Cet exemple entraîne ce qui suit :

  • Lancez la mappe qui utilise cette requête en tant que source de données lorsque l'une des conditions suivantes est remplie :
    • insertion dans les tables TRANSACTIONS ACCT_INFO
    • suppression de la table ACCT_INFO
    • ACCT_INFO est mis à jour,

mais uniquement lorsqu'une ligne existe dans une TRANSACTION avec la colonne TRANS_TYPE définie sur la valeur 'PY'.

Vous ne pouvez pas combiner | et & dans une classe d'événements (Insert into, Delete from ou Update of) si plus de deux tables ou colonnes sont combinées. Ainsi, la commande suivante n'est pas valide :


-TR I TABLE1 & TABLE2 | TABLE3