Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Transaktionsmethoden verwalten die Transaktionsverarbeitung in einem Connection-Objekt wie folgt:
BeginTrans Beginnt eine neue Transaktion.
CommitTrans Speichert alle Änderungen und beendet die aktuelle Transaktion. Es kann auch eine neue Transaktion starten.
RollbackTrans Bricht alle Änderungen ab, die während der aktuellen Transaktion vorgenommen wurden, und beendet die Transaktion. Es kann auch eine neue Transaktion starten.
Syntax
level = object.BeginTrans()
object.BeginTrans
object.CommitTrans
object.RollbackTrans
Rückgabewert
BeginTrans kann als Funktion aufgerufen werden, die eine Long-Variable zurückgibt, die die Schachtelungsebene der Transaktion angibt.
Die Parameter
Objekt-
Ein Connection-Objekt.
Verbindung
Verwenden Sie diese Methoden mit einem Connection-Objekt, wenn Sie eine Reihe von Änderungen speichern oder abbrechen möchten, die an den Quelldaten als einzelne Einheit vorgenommen wurden. Um beispielsweise Geld zwischen Konten zu übertragen, subtrahieren Sie einen Betrag von einem Betrag und addieren denselben Betrag zum anderen. Wenn ein Update fehlschlägt, werden die Konten nicht mehr ausgeglichen. Wenn Sie diese Änderungen innerhalb einer geöffneten Transaktion vornehmen, wird sichergestellt, dass entweder alle oder keine der Änderungen durchlaufen werden.
Hinweis
Nicht alle Anbieter unterstützen Transaktionen. Stellen Sie sicher, dass die vom Anbieter definierte Eigenschaft "Transaction DDL" in der Connection-Objekt Properties-Sammlung angezeigt wird, was darauf hinweist, dass der Anbieter Transaktionen unterstützt. Wenn der Anbieter Transaktionen nicht unterstützt, wird beim Aufrufen einer dieser Methoden ein Fehler zurückgegeben.
Nachdem Sie die BeginTrans--Methode aufgerufen haben, wird der Anbieter keine Änderungen mehr ausführen, die Sie vornehmen, bis Sie CommitTrans- oder RollbackTrans- aufrufen, um die Transaktion zu beenden.
Für Anbieter, die geschachtelte Transaktionen unterstützen, startet das Aufrufen der BeginTrans--Methode innerhalb einer geöffneten Transaktion eine neue geschachtelte Transaktion. Der Rückgabewert gibt die Ebene der Schachtelung an: Ein Rückgabewert von "1" gibt an, dass Sie eine Transaktion auf oberster Ebene geöffnet haben (d. h. die Transaktion ist nicht in einer anderen Transaktion geschachtelt), "2" gibt an, dass Sie eine Transaktion auf zweiter Ebene geöffnet haben (eine Transaktion, die in einer Transaktion auf oberster Ebene geschachtelt ist) usw. Das Aufrufen CommitTrans- oder RollbackTrans- wirkt sich nur auf die zuletzt geöffnete Transaktion aus; Sie müssen die aktuelle Transaktion schließen oder zurücksetzen, bevor Sie alle Transaktionen auf höherer Ebene auflösen können.
Durch Aufrufen der CommitTrans--Methode werden Änderungen gespeichert, die in einer geöffneten Transaktion für die Verbindung vorgenommen wurden, und die Transaktion wird beendet. Durch Aufrufen der RollbackTrans--Methode werden alle Änderungen, die in einer geöffneten Transaktion vorgenommen wurden, rückgängig gemacht und die Transaktion beendet. Beim Aufrufen einer der beiden Methoden wird ein Fehler generiert, wenn keine geöffnete Transaktion vorhanden ist.
Abhängig von der Attributes-Eigenschaft des Connection-Objekts können durch Aufrufen der Methoden CommitTrans oder RollbackTrans automatisch eine neue Transaktion gestartet werden. Wenn die eigenschaft Attributes auf adXactCommitRetainingfestgelegt ist, startet der Anbieter automatisch eine neue Transaktion nach einem CommitTrans Aufruf. Wenn die eigenschaft Attributes auf adXactAbortRetainingfestgelegt ist, startet der Anbieter automatisch eine neue Transaktion nach einem RollbackTrans Aufruf.
Remote Data Service
Die Methoden BeginTrans, CommitTrans und RollbackTrans sind für ein clientseitiges Connection-Objekt nicht verfügbar.
Gilt für
Siehe auch
BeginTrans-, CommitTrans- und RollbackTrans-Methoden (Beispiel) (VB)
BeginTrans-, CommitTrans- und RollbackTrans-Methode (Beispiel) (VC++)
Attributes-Eigenschaft (ADO)