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.
Gilt für: Access 2013, Office 2013
ADO stellt die folgenden Methoden zur Steuerung von Transaktionen bereit: BeginTrans, CommitTrans und RollbackTrans. Verwenden Sie diese Methoden mit einem Connection-Objekt, wenn Sie Änderungen an den Quelldaten als eine Einheit speichern oder abbrechen möchten. Beispielsweise subtrahieren Sie zum Übertragen von Geldbeträgen zwischen Konten einen Betrag von einem Konto und addieren den gleichen Betrag zu einem anderen Konto. Wenn eine der Aktualisierungen fehlschlägt, sind die Konten nicht mehr ausgeglichen. Durch das Vornehmen dieser Änderungen mit einer geöffneten Transaktion wird sichergestellt, dass alle oder keine der Änderungen durchlaufen.
Hinweis
Transaktionen werden nicht von allen Anbietern unterstützt. Überprüfen Sie, ob die vom Anbieter definierte "Transaction DDL"-Eigenschaft in der Properties-Auflistung des Connection-Objekts angezeigt wird und damit angibt, dass Transaktionen vom Anbieter unterstützt werden. Wenn Transaktionen vom Anbieter nicht unterstützt werden, wird beim Aufrufen einer dieser Methoden ein Fehler zurückgegeben.
Nachdem Sie die BeginTrans -Methode aufgerufen haben, führt der Anbieter erst wieder einen sofortigen Commit für Ihre Änderungen aus, wenn Sie CommitTrans oder RollbackTrans zum Beenden der Transaktion aufrufen.
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 wird beendet. Ein Fehler wird generiert, wenn eine der Methoden ohne geöffnete Transaktion aufgerufen wird.
In Abhängigkeit von der Attributes-Eigenschaft des Connection -Objekts kann durch Aufrufen der CommitTrans - oder RollbackTrans -Methode automatisch eine neue Transaktion gestartet werden. Wenn die Attributes -Eigenschaft auf adXactCommitRetaining festgelegt ist, startet der Anbieter nach einem Aufruf von CommitTrans automatisch eine neue Transaktion. Wenn die Attributes -Eigenschaft auf adXactAbortRetaining festgelegt ist, startet der Anbieter nach einem Aufruf von RollbackTrans automatisch eine neue Transaktion.
Transaktionsisolationsstufe
Mithilfe der IsolationLevel -Eigenschaft legen Sie die Isolationsstufe einer Transaktion in einem Connection -Objekt fest. Diese Einstellung wird erst nach dem nächsten Aufruf der BeginTrans-Methode wirksam. Falls die angeforderte Isolationsstufe nicht verfügbar ist, gibt der Anbieter möglicherweise die nächsthöhere Isolationsstufe zurück. Weitere Informationen zu gültigen Werten finden Sie in der IsolationLevel-Eigenschaft in der ADO-Programmierreferenz.
Geschachtelte Transaktionen
Bei Anbietern, die geschachtelte Transaktionen unterstützen, startet der Aufruf der BeginTrans-Methode innerhalb einer geöffneten Transaktion eine neue, geschachtelte Transaktion. Der Rückgabewert gibt die Ebene der Schachtelung an: Der Rückgabewert "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 der zweiten Ebene (eine Transaktion, die in einer Transaktion der obersten Ebene geschachtelt ist) geöffnet haben usw. Das Aufrufen von CommitTrans oder RollbackTrans wirkt sich nur auf die zuletzt geöffnete Transaktion aus. Sie müssen die aktuelle Transaktion schließen oder ein Rollback ausführen, bevor Sie Transaktionen auf höherer Ebene auflösen können.