Vous n'êtes pas identifié(e).

#1 03/03/2010 10:04:37

iris
Membre

[Triggers] Actions blonquantes

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

#2 03/03/2010 10:20:52

gleu
Administrateur

Re : [Triggers] Actions blonquantes

Bien ?

Plus sérieusement, ce serait plus simple de proposer un exemple vous posant problème.


Guillaume.

Hors ligne

#3 03/03/2010 11:06:32

iris
Membre

Re : [Triggers] Actions blonquantes

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

#4 03/03/2010 11:20:01

gleu
Administrateur

Re : [Triggers] Actions blonquantes

- 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

Pied de page des forums