|
| Tsql, er trigger asynkron eller synkron? Fra : Leif Neland |
Dato : 21-09-10 12:33 |
|
Jeg har en trigger, der udløses, når der ændres i visse felter i en
tabel, og så udføres der noget (der gemmes data i en log-tabel).
Kan man være sikker på, at hvis jeg først fra min applikation laver et
kald til sql, der trigger triggeren, at kaldet først returnerer, når
det, der skal udføres, er udført?
Eller i det mindste, at det er udført, når mit næste kald til databasen
udføres?
| |
Arne Vajhøj (21-09-2010)
| Kommentar Fra : Arne Vajhøj |
Dato : 21-09-10 22:47 |
|
On 21-09-2010 07:33, Leif Neland wrote:
> Jeg har en trigger, der udløses, når der ændres i visse felter i en
> tabel, og så udføres der noget (der gemmes data i en log-tabel).
>
> Kan man være sikker på, at hvis jeg først fra min applikation laver et
> kald til sql, der trigger triggeren, at kaldet først returnerer, når
> det, der skal udføres, er udført?
>
> Eller i det mindste, at det er udført, når mit næste kald til databasen
> udføres?
Synkron.
Jeg kan ikke finde noget eksplicit i docs omkring det.
Men docs siger at hvis trigger returnerer result sets så
er de til rådighed for app ligeosm for SP kald.
Det må betyde at trigger er kørt færdig, når der returneres
til app.
Arne
| |
Peter Lykkegaard (28-09-2010)
| Kommentar Fra : Peter Lykkegaard |
Dato : 28-09-10 03:12 |
|
Leif Neland skrev
> Kan man være sikker på, at hvis jeg først fra min applikation laver et
> kald til sql, der trigger triggeren, at kaldet først returnerer, når
> det, der skal udføres, er udført?
Både og
Rejser man en exception i en trigger kan denne fanges af klienten -
dvs synkront
Fx mssql kan arbejde med lazywrite/locks etc der gør at du måske får
problemer med læsningen indenfor samme splitsekund
- Peter
| |
|
|