Hmm..
Die Preisfrage ist doch, wer den Datensatz festhällt, obwohl Querys mit INSERT, EDIT und DELETE verwendt werden.
Imho Imho kann eigentlich kein DeadLock
entstehen wenn alle umgehend ein Post ausführen.
Nur ein kleiner Hinweis:
Der MS
SQL-Server macht nicht nur für INSERT, EDIT und DELETE ein Row/Table Lock, sondern auch für SELECT.
Er entscheidet selber (je nach
Query) ob er nur Rows, oder ganze Tables lockt.
Wenn dann irgend ein anderer
Query ausgeführt wird, und dieser länger dauert kann es zu einem Deadlock kommen, wenn sich 2/3 oder mehr gegenseitig blockieren, wenn diese zu lange dauern und in den timeout gelaufen wird.
Hinweis: Ein Change ist nicht mit Post abgeschlossen, da diverse Aktionen wie Trigger/Index-Aktualisierungen auch noch danach laufen können.
Auch diese erzeugen wieder Locks..
Durch die möglichkeit von SNAPSHOT Verwendung werden alle Selects ohne Locks ausgeführt...