Freigeben über


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