Data.SqlExpr.TSQLConnection.RollbackIncompleteFreeAndNil
Delphi
procedure RollbackIncompleteFreeAndNil(var Transaction: TDBXTransaction);
C++
void __fastcall RollbackIncompleteFreeAndNil(Data::Dbxcommon::TDBXTransaction* &Transaction);
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
procedure function |
public | Data.SqlExpr.pas Data.SqlExpr.hpp |
Data.SqlExpr | TSQLConnection |
Beschreibung
Verwirft alle Änderungs-, Einfüge- und Löschoperationen einer bestimmten Transaktion und beendet sie.
Mit RollbackIncompleteFreeAndNil beenden Sie die Transaktion und verwerfen alle von Transaction beschriebenen, vorgenommenen Änderungen. Transaction ist die TDBXTransaction-Instanz, die von der Methode BeginTransaction beim Starten der Transaktion zurückgegeben wird.
Wenn die angegebene Transaktion die einzige aktive Transaktion war, setzt RollbackFreeAndNil die Eigenschaft InTransaction auf false.
Alle aktiven Transaktionen, die nach dieser Transaktion begonnen wurden, werden auch zurückgesetzt und freigegeben.
Die variable Transaction-Instanz wird auf nil gesetzt.
Im Gegensatz zu der Prozedur RollbackFreeAndNil, löst diese Prozedur keine Exception aus, wenn Transaction ungültig oder auf nil gesetzt ist. Diese Methode eignet sich besonders für die Verwendung in einem finally- (oder except-) Block. Der try-Block verwendet entweder CommitFreeAndNil oder RollbackFreeAndNil, und die Transaction wurde bereits beendet, freigegeben und auf nil gesetzt. Wenn im try-Block keine Exception ausgelöst wird, führt ein Aufruf von RollbackIncompleteFreeAndNil im finally-Block nichts aus, weil die Transaction-Instanz nicht mehr gültig ist. Wenn eine Exception ausgelöst wird, setzt ein Aufruf von RollbackIncompleteFreeAndNil im finally-Block die Transaktion zurück, gibt sie frei und setzt die Transaction-Instanz auf nil.