JetBeginSession-Funktion
Letzte Änderung: Freitag, 27. Februar 2015
Gilt für: Windows | Windows Server
JetBeginSession-Funktion
Die Funktion JetBeginSession startet eine Sitzung und initialisiert und gibt ein ESE-Sitzungshandle (JET_SESID) zurück. Sitzungen alle Zugriff auf die Datenbank zu steuern und dienen zur Steuerung des Umfangs der Transaktionen. Die Sitzung kann zu beginnen, zu bestätigen oder Abbrechen Transaktionen verwendet werden. Die Sitzung wird auch zum Anfügen, erstellen oder öffnen Sie eine Datenbank. Die Sitzung wird als Kontext für alle DDL und DML-Vorgänge verwendet. Um Parallelität und parallelen Zugriff auf die Datenbank zu steigern, können mehrere Sitzungen begonnen werden.
JET_ERR JET_API JetBeginSession(
__in JET_INSTANCE instance,
__out JET_SESID* psesid,
__in_opt JET_PCSTR szUserName,
__in_opt JET_PCSTR szPassword
);
Parameter
Instance
Die Datenbankinstanz für dieses Anrufs verwenden.
psesid
Zeiger auf eine Variable, die das Sitzungshandle bei erfolgreicher Rückgabe initialisiert.
szUserName
Dieser Parameter ist reserviert.
szPassword
Dieser Parameter ist reserviert.
Return Value
Diese Funktion ermöglicht die Rückgabe von einem beliebigen JET_ERRs, die in dieser API definiert sind. Weitere Informationen zu Fehlern von Jet finden Sie unter Extensible Storage Engine-Fehlern und Fehler behandeln von Parametern.
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 die Instanz der Sitzung zugeordnet aufgrund eines Aufrufs von JetStopServicebehoben ist. |
JET_errInstanceUnavailable |
Es ist nicht möglich, den Vorgang abzuschließen, da die Instanz der Sitzung zugeordnet ein schwerwiegender Fehler, der erforderlich sind aufgetreten wurde, dass der Zugriff auf alle Daten gesperrt werden, um die Integrität der Daten zu schützen. Dieser Fehler wird nur von Windows XP und spätere Versionen zurückgegeben werden. |
JET_errInvalidParameter |
Einer der bereitgestellten Parameter einen unerwarteten Wert oder oder enthalten ein Werts, das nicht mit dem Wert eines anderen Parameters kombiniert keinen Sinn. |
JET_errNotInitialized |
Es ist nicht möglich, den Vorgang abzuschließen, da die Instanz der Sitzung zugeordnet wurde noch nicht initialisiert. |
JET_errOutOfMemory |
Der Vorgang fehlgeschlagen ist, da es kein Speicherplatz zugeordnet. |
JET_errOutOfSessions |
Die Anzahl der Sitzungen, die das Modul den Client gestartet werden kann, ist beschränkt. Dieser Wert kann die Konstante JET_paramMaxSessions mit JetSetSystemParameter geändert werden. Die Standardanzahl zulässiger Sitzungen, beträgt 16. Einzelheiten zu JET_paramMaxSessions finden Sie unter System-Parameter . |
JET_errRestoreInProgress |
Es ist nicht möglich, den Vorgang abzuschließen, da ein Restore-Vorgang in Arbeit auf die Instanz der Sitzung zugeordnet ist. |
JET_errTermInProgress |
Es ist nicht möglich, den Vorgang abzuschließen, da die Instanz der Sitzung zugeordnet heruntergefahren wird. |
Bei Erfolg Handle für die Sitzung initialisiert wird, und für Datenbankvorgänge verwendet werden kann.
Bei einem Fehler keine verfügbaren Sitzungen vorhanden sind, oder eine neue Sitzung konnte nicht initialisiert werden.
Anmerkungen
Achten Sie besonders muss verwendet werden, bei der Sitzungen über unterschiedliche Threads verwenden. Eine Sitzung verfolgt welche Thread, die sie während der JetBeginTransaction, JetCommitTransactionoder JetRollbackauf verwendet wurde, und es wird ein Fehler ausgelöst, wenn in mehreren Threads mit einer geöffneten Transaktion verwendet. Die JetResetSessionContextJetSetSessionContext können dieses Verhalten ändern. Da die Sitzung weiterhin eine serialisierten Kontext ist und mehrere Datenbankvorgänge können nicht auf einer einzelnen Sitzung gleichzeitig, nur seriell ausgeführt werden. Mehrere Sitzungen können Sie jedoch um gleichzeitiger Datenbankzugriff zu erzielen. Sitzungen können innerhalb einer Transaktion über Threads von Einstellung und Zurücksetzen der Sitzung Kontexten verwendet werden.
Handle für die Sitzung sollte mit JetEndSession istgeschlossen werden.
Voraussetzungen
-Client, |
Erfordert Windows Vista, Windows XP oder Windows 2000 Professional. |
Server |
WindowsServer 2008, WindowsServer 2003 oder Windows 2000 Server benötigt. |
Kopfzeile |
In Esent.h deklariert. |
Library |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert "ESENT.dll". |
Unicode |
Implementiert als JetBeginSessionW (Unicode) und JetBeginSessionA (ANSI). |
Siehe auch
JET_ERR
JET_INSTANCE
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetDupSession
JetEndSession ist
JetResetSessionContext
JetRollback
JetSetSessionContext
JetStopService
Systemparameter