Quelle est la différence entre FOR
et les AFTER
déclencheurs?
sql
sql-server-2005
triggers
sqlchild
la source
la source
Réponses:
Il n'y a pas de différence, ils font la même chose.
Est le même que
Un
INSTEAD OF
déclencheur est différent et se déclenche avant et à la place de l'insertion et peut être utilisé sur les vues, afin d'insérer les valeurs appropriées dans les tables sous-jacentes.la source
@Ben a tout à fait raison.
Voici l'article MSDN Exploration des déclencheurs SQL Server
Un paragraphe de l'article:
la source
AFTER spécifie que le déclencheur DML est déclenché uniquement lorsque toutes les opérations spécifiées dans l'instruction SQL de déclenchement se sont exécutées avec succès. Toutes les actions en cascade référentielle et les vérifications de contraintes doivent également réussir avant que ce déclencheur ne se déclenche. AFTER est la valeur par défaut lorsque FOR est le seul mot-clé spécifié.
Les déclencheurs AFTER ne peuvent pas être définis sur les vues.
INSTEAD OF Spécifie que le déclencheur DML est exécuté à la place de l'instruction SQL de déclenchement, remplaçant par conséquent les actions des instructions de déclenchement. INSTEAD OF ne peut pas être spécifié pour les déclencheurs DDL ou d'ouverture de session.
https://docs.microsoft.com/en-us/sql/t-sql/statements/create-trigger-transact-sql
la source