Hallo,
Probleme im Mehrbenutzerbetrieb -> ja
richtiger ist aber nicht
richtig
wasserdichte Operation -> = Transaktion, Execute Block ist meines Wissens keine Transaktion.
Das habe ich allerdings noch fast nie benutzt, ich könnte mich also auch irren.
Das meinte ich aber nicht.
Noch mal mein Bsp.
Nutzer 1 beginnt Transaktion 1
geg.
Record2000, Ordnung-2000
Record2001, Ordnung-2001
Ziel
Record2000, Ordnung-2000
Record_neu, Ordnung-2001
Record2001, Ordnung-2002
-> Commit
Nutzer 2, beginnt Transaktion
geg.
Record2000, Ordnung-2000
Record2001, Ordnung-2001
Ziel
Record2000, Ordnung-2000
Record2_neu, Ordnung-2001
Record2001, Ordnung-2002
-> Nutzer 2 Commit
Wenn jetzt der Nutzer2 kurz hinter Nutzer1 beginnt (StartTransaction) und kurz nach Nutzer 1 sein Commit macht.
Was passiert?
Die beiden neuen Records haben die gleiche Ordnungszahl.
Weil beide Transaktionen voneinander getrennt laufen und den gleichen Ausgangsdatenbestand haben.
Record2000, Ordnung-2000
Record_neu, Ordnung-2001
Record2_neu, Ordnung-2001
Record2001, Ordnung-2002
Hier könnte ein
Unique Index helfen, so dass zumindestens die Transaktion von Nutzer2 komplett verworfen wird.