Vous n'êtes pas identifié(e).
Pages : 1
Bonjour
Dans une table quelconque qui possede un trigger avec sa procédure stockée associée. Comment sont gérées les concurences entre les triggers de celle-ci ?
Iris
Hors ligne
Bien ?
Plus sérieusement, ce serait plus simple de proposer un exemple vous posant problème.
Guillaume.
Hors ligne
Voici un exemple :
Dans mon exemple, nous avons une table "toto" qui possède un trigger et sa procédure stockée (before insert).
Le scénario est le suivant: Deux INSERT sont réalisés sur la table "toto" qui déclanche au même moment le trigger (before insert).
Requete n*1
insert trigger procédure (insert dans la base)
[*]------->[*] ---------------------->[*]
requete n*2
insert trigger procédure (insert dans la base)
[*]------->[*] ------------------------->[*]
Legende:
[*] début d'une action
-----> temps
Voici mes questions:
- Comment se comporte les deux trigger ?
- Les trigger peuvent-ils fonctionner en concurance ?
- Ces deux requetes sont atomiques et la seconde sera bloquée le temps que la premiere aboutisse ?
Iris
Hors ligne
- Comment se comporte les deux trigger ?
Tout dépend du code du trigger. Dans la majorité des cas, je dirais que c'est sans aucun problème.
- Les trigger peuvent-ils fonctionner en concurance ?
Oui, tout à fait. Ce sont deux transactions indépendantes.
- Ces deux requetes sont atomiques et la seconde sera bloquée le temps que la premiere aboutisse ?
Les requêtes (avec la partie trigger) sont automatiques. Il n'y aura pas de blocage, elles s'exécuteront en parallèle.
Guillaume.
Hors ligne
Pages : 1