Comment référencer les anciennes valeurs et de nouvelles valeurs dans SQL

Une partie du SQL CREATE TRIGGER la syntaxe que vous pouvez utiliser est l'option REFERENCEMENT old_or_new_value_alias_list phrase. Il vous permet de créer un alias ou corrélation nom qui fait référence à des valeurs dans la table de l'objet de la gâchette. Après avoir créé un nom de corrélation de nouvelles valeurs ou un alias de nouveaux contenus de la table, vous pouvez ensuite référencer les valeurs qui existeront après une INSERT ou METTRE À JOUR opération.

De la même manière, après avoir créé un nom de corrélation pour les anciennes valeurs ou un alias pour les vieux contenu de la table, vous pouvez ensuite référencer les valeurs qui existaient dans le tableau de sujet avant un METTRE À JOUR ou EFFACER opération.

La old_or_new_values_alias_list dans le CREATE TRIGGER syntaxe peut être un ou plusieurs des mentions suivantes:

OLD [ROW] [AS] 

ou




NEW [ROW] [AS] 

ou

Ancienne table [AS] 

ou

NOUVEAU TABLEAU [AS] 

Les alias de table sont des identifiants pour les tables de transition, qui ne sont pas persistants, mais qui existent uniquement pour faciliter l'opération de référencement. Comme on peut s'y attendre, Nouvelle ligne et NOUVEAU TABLEAU ne peut pas être spécifiée pour un EFFACER déclenchement, et Ancienne ligne aussi bien que Ancienne table ne peut pas être spécifiée pour une INSERT déclenchement.

Après vous supprimez une ligne ou une table, il n'y a aucune nouvelle valeur. De même, Ancienne ligne et Ancienne table ne peut pas être spécifiée pour une INSERT déclenchement. Il n'y a pas les anciennes valeurs de référence.

Dans un trigger de niveau ligne, vous pouvez utiliser un vieux nom valeur de corrélation pour référencer les valeurs de la ligne étant modifiées ou supprimées par l'instruction SQL déclenchement que cette ligne existait avant la déclaration modifiée ou supprimée il. De même, un vieux alias de table de valeur est ce que vous utilisez pour accéder aux valeurs dans l'ensemble de la table telles qu'elles existaient avant l'entrée en vigueur de l'action du déclenchement instruction SQL.

Vous ne pouvez pas spécifier Ancienne table ou NOUVEAU TABLEAU avec un AVANT déclenchement. Les tableaux de transition créées par le Ancienne table ou NOUVEAU TABLEAU mot-clé sont trop susceptibles d'être affectés par les actions provoquées par l'instruction SQL déclenchée. Pour éliminer ce problème potentiel, en utilisant Ancienne table et NOUVEAU TABLEAU avec un AVANT déclencheur est interdite.


» » » » Comment référencer les anciennes valeurs et de nouvelles valeurs dans SQL