Hallo Hansa
Du hast vollkommen recht. Es ist ein absoloter Unsinn, was da geschrieben wurde. Eine Transaktion ist wirklich dazu da, einen gesamten Job rückgängig zu machen. Das kann natürlich auch eine Tabelle sein, was z.B. der Fall ist, wenn Du mehrere Datensätze in eine Tabelle speicherst und diese alle wieder entfernt werden sollen, wenn ein Fehler aufgetreten ist.
In diese Zusammenhang noch ein Hinweis:
Eine Transaktion sollte nur über einen beschränkten Zeitraum offen bleiben. Dies ist insbesonders dann wichtig, wenn die Datenquelle ein MS-
SQL-Server (Version 7 oder älter) ist. Diese
SQL-Server-Versionen kennt nur das Page-Locking im Zusammenhang mit Transaktionen, wodurch nicht ein bestimmter Datensatz gelockt wird, sondern eine oder mehrer Pages. Dadurch werden unter umständen mehrere Datensätze gelockt, die nichts mit dem gewollten Datensatz zu tun hat. Deshalb sollte die Transaktion so schnell als möglich abgeschlossen sein.
Gruss
Xaver