JetBeginTransaction2-Funktion
Gilt für: Windows | Windows Server
JetBeginTransaction2-Funktion
Die JetBeginTransaction2-Funktion bewirkt, dass eine Sitzung eine Transaktion eingibt und einen neuen Speicherpunkt erstellt. Diese Funktion kann mehr als einmal in einer einzelnen Sitzung aufgerufen werden, um zusätzliche Speicherpunkte zu erstellen. Diese Speicherpunkte können verwendet werden, um Änderungen an der Datenbank selektiv beizubehalten oder zu verwerfen.
JET_ERR JET_API JetBeginTransaction2(
__in JET_SESID sesid,
__in JET_GRBIT grbit
);
Parameter
sesid
Die Sitzung, die für diesen Aufruf verwendet werden soll.
grbit
Eine Gruppe von Bits, die die Optionen enthalten, die für diesen Aufruf verwendet werden sollen, einschließlich null oder mehr der folgenden Optionen.
Wert |
Bedeutung |
---|---|
JET_bitTransactionReadOnly |
Die Transaktion ändert die Datenbank nicht. Wenn ein Update versucht wird, schlägt dieser Vorgang mit JET_errTransReadOnly fehl. Diese Option wird ignoriert, es sei denn, sie wird angefordert, wenn sich die angegebene Sitzung noch nicht in einer Transaktion befindet. Diese Option ist nur ab Windows XP verfügbar. |
Rückgabewert
Diese Funktion gibt den JET_ERR-Datentyp mit einem der folgenden Rückgabecodes zurück. Weitere Informationen zu möglichen ESE-Fehlern finden Sie unter Erweiterbare Speichermodulfehler und Fehlerbehandlungsparameter.
Rückgabecode |
Beschreibung |
---|---|
JET_errSuccess |
Der Vorgang wurde erfolgreich abgeschlossen. |
JET_errClientRequestToStopJetService |
Es ist nicht möglich, den Vorgang abzuschließen, da alle Aktivitäten auf dem instance, die der Sitzung zugeordnet sind, aufgrund eines Aufrufs von JetStopService beendet wurden. |
JET_errInstanceUnavailable |
Es ist nicht möglich, den Vorgang abzuschließen, da beim instance, der der Sitzung zugeordnet ist, ein schwerwiegender Fehler aufgetreten ist, der erfordert, dass der Zugriff auf alle Daten widerrufen wird, um die Integrität dieser Daten zu schützen. Dieser Fehler wird nur von Windows XP und höheren Versionen zurückgegeben. |
JET_errNotInitialized |
Es ist nicht möglich, den Vorgang abzuschließen, da die der Sitzung zugeordnete instance noch nicht initialisiert wurde. |
JET_errRestoreInProgress |
Es ist nicht möglich, den Vorgang abzuschließen, da auf dem der Sitzung zugeordneten instance ein Wiederherstellungsvorgang ausgeführt wird. |
JET_errSessionSharingViolation |
Dieselbe Sitzung kann nicht für mehrere Threads gleichzeitig verwendet werden. Dieser Fehler wird nur von Windows XP und höheren Versionen zurückgegeben. |
JET_errTermInProgress |
Es ist nicht möglich, den Vorgang abzuschließen, da die der Sitzung zugeordnete instance heruntergefahren wird. |
JET_errTransTooDeep |
Eine neue Transaktion kann nicht gestartet werden, da die Sitzung bereits die maximale Speicherpunkttiefe hat, die von der Datenbank-Engine zulässig ist. |
Bei Erfolg befindet sich die bereitgestellte Sitzung innerhalb einer Transaktion. Wenn sich die Sitzung zuvor innerhalb einer Transaktion befand, wird ein neuer Speicherpunkt erstellt.
Bei einem Fehler bleibt der Transaktionsstatus der Sitzung unverändert. Es wird keine Änderung des Datenbankstatus vorgenommen.
Bemerkungen
Weitere Informationen zur Funktionsweise von Transaktionen finden Sie unter JetBeginTransaction.
Anforderungen
Anforderung | Wert |
---|---|
Client |
Erfordert Windows Vista, Windows XP oder Windows 2000 Professional. |
Server |
Erfordert Windows Server 2008, Windows Server 2003 oder Windows 2000 Server. |
Kopfzeile |
Deklariert in Esent.h. |
Bibliothek |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert ESENT.dll. |
Weitere Informationen
JET_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetGetSystemParameter
JetResetSessionContext
JetRollback
JetSetSessionContext
Systemparameter