Freigeben über


JetSetLS-Funktion

Letzte Änderung: Freitag, 27. Februar 2015

Gilt für: Windows | Windows Server

JetSetLS-Funktion

Die JetSetLS -Funktion ermöglicht der Anwendung zuzuordnende Handle für einen mit einem Cursor oder Tabelle, Cursor zugeordnet als lokaler Speicher bezeichnet. Dieses Handle für Gerätekontext kann von der Anwendung verwendet werden, um zusätzliche Daten zu speichern, die ein Cursor oder eine Tabelle zugeordnet ist. Die Anwendung wird später benachrichtigt mit einem Common Language Runtime-Rückruf, wenn das Kontexthandle freigegeben werden muss. Dadurch können zuzuordnende Zustand mit einem Cursor oder einer Tabelle dynamisch zugewiesen.

Windows XP:  JetSetLS wird in Windows XP eingeführt.

JET_ERR JET_API JetSetLS(
  __in          JET_SESID sesid,
  __in          JET_TABLEID tableid,
  __in          JET_LS ls,
  __in          JET_GRBIT grbit
);

Parameter

sesid

Die Sitzung für diesen Aufruf verwenden.

Tabellen-ID

Der Cursor für diesen Aufruf verwenden.

ls

Das Kontexthandle den Cursor oder die Tabelle zugeordnet werden.

Wenn JET_bitLSReset angegeben wird der tatsächliche Wert dieses Parameters wird ignoriert, und JET_LSNil wird verwendet.

JET_errInvalidGrbit

Eine Gruppe von Bits, die Optionen für diesen Aufruf enthalten die 0 (null) oder mehr der folgenden enthalten.

Wert

Bedeutung

JET_bitLSCursor

Diese Option gibt an, dass ein Handle für den Gerätekontext des angegebenen Cursors zugeordnet werden sollen.

Wenn weder JET_bitLSCursor noch JET_bitLSTable angegeben ist, wird JET_bitLSCursor angenommen.

Es ist unzulässig, diese Option mit JET_bitLSTable verwenden. Der Vorgang schlägt mit 0xFFFFFC7C fehl, wenn dies versucht wird.

JET_bitLSReset

Diese Option gibt an, dass das angegebene Kontexthandle ignoriert werden soll und das Kontexthandle für das ausgewählte Objekt zu JET_LSNil zurückgesetzt werden sollen.

Es ist wichtig zu beachten, dass diese Aktion nicht in einen Rückruf zur Reinigung den vorherigen Wert der Kontextnummer für das markierte Objekt führt. Eine ordnungsgemäße Bereinigung des vorherigen Kontexthandle kann mit JetGetLS mit JET_bitLSReset erreicht werden. Weitere Informationen finden Sie unter JetGetLS .

JET_bitLSTable

Diese Option gibt an, dass ein Handle für den Gerätekontext mit der Tabelle, für die existierenden Cursor verknüpft sein soll.

Es ist unzulässig, diese Option mit JET_bitLSCursor verwenden. Der Vorgang schlägt mit 0xFFFFFC7C fehl, wenn dies versucht wird.

Return Value

Diese Funktion gibt den Datentyp der JET_ERR mit einem der folgenden Rückgabecodes. Weitere Informationen zu den möglichen ESE-Fehlern finden Sie unter Extensible Storage Engine-Fehler und Fehler behandeln Parameter.

Rückgabecode

Beschreibung

JET_errSuccess

Der Vorgang wurde erfolgreich abgeschlossen.

JET_errClientRequestToStopJetService

Es ist nicht möglich, um den Vorgang abzuschließen, da alle Aktivitäten in der Instanz dieser Sitzung aufgrund eines Aufrufs von JetStopServiceeingestellt hat.

JET_errInvalidgrbit

Eine der angeforderten Optionen ungültig falsch verwendet oder nicht implementiert. Dies kann für JetSetLS auftreten, wenn JET_bitLSCursor und JET_bitLSTable angegeben werden.

JET_errInstanceUnavailable

Es ist nicht möglich, um den Vorgang abzuschließen, da die Sitzung zugeordnete Instanz ein schwerwiegender Fehler, der erfordert aufgetreten ist, 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äteren Versionen zurückgegeben werden.

JET_errLSAlreadySet

Das angegebene Kontexthandle konnte nicht das angeforderte Objekt zugeordnet werden, da bereits einen Kontexthandle zugeordnet.

JET_errLSCallbackNotSpecified

Das angegebene Kontexthandle konnte nicht das angeforderte Objekt zugeordnet werden, da der Common Language Runtime-Rückruf für die Sitzung zugeordnete Instanz nicht konfiguriert wurde.

JET_errNotInitialized

Es ist nicht möglich, um den Vorgang abzuschließen, da die Instanz dieser Sitzung noch nicht initialisiert wurde.

JET_errRestoreInProgress

Es ist nicht möglich, um den Vorgang abzuschließen, da ein Wiederherstellungsvorgang ausgeführt auf die Instanz der Sitzung zugeordnet wird.

JET_errTermInProgress

Es ist nicht möglich, um den Vorgang abzuschließen, da die Sitzung zugeordnete Instanz heruntergefahren wird.

Bei Erfolg für das angegebene Kontexthandle erfolgreich das angeforderte Objekt zugeordnet wurde. Keine Änderung an den Zustand der Datenbank erfolgt.

Bei einem Fehler ist keine Änderung am Status des angeforderten Objekts aufgetreten. Keine Änderung an den Zustand der Datenbank erfolgt.

Anmerkungen

Der lokale Speicher für ein Cursor oder eine Tabelle sollte als flüchtiger Cache angesehen werden. Die Anwendung sollte zunächst das Kontexthandle mit JetGetLSabgerufen. Wenn der Wert nicht festgelegt wird (das heißt JET_LSNil ist) sollte die Anwendung erstellt einen neuen Kontext und mit JetSetLSim Cache zu laden. Die Anwendung kann den Cache durch einen Aufruf von JetGetLS mit JET_bitLSReset löschen. Wenn das Datenbankmodul den Cache Löscht ein Rückruf für die Common Language Runtime generiert werden, um der Anwendung zu bereinigen die Möglichkeit geben, Kontext. Der Rückruftyp werden für ein Handle für einen JET_cbtypFreeCursorLS mit einem Cursor verknüpft ist und für ein Handle für einen JET_cbtypFreeTableLS mit einer Tabelle verknüpft ist. In beiden Fällen wird das Kontexthandle als pvArg1 übergeben werden. Weitere Informationen finden Sie unter JET_CALLBACK .

Der Common Language Runtime-Rückruf muss ordnungsgemäß konfiguriert werden, für die Instanz der angegebenen Sitzung vor dem lokalen Speicher verwendet werden kann. Dieser Rückruf kann mit JetSetSystemParameter mit JET_paramRuntimeCallbackfestgelegt werden. Weitere Informationen finden Sie unter JetSetSystemParameter und JET_paramRuntimeCallback in den Systemparametern.

Voraussetzungen

-Client,

Erfordert Windows Vista oder Windows XP.

Server

Erfordert WindowsServer 2008 oder WindowsServer 2003.

Kopfzeile

In Esent.h deklariert.

Library

Verwenden Sie ESENT.lib.

DLL

"ESENT.dll" erfordert.

Siehe auch

JET_CALLBACK
JET_ERR
JET_GRBIT
JET_LS
JET_SESID
JET_TABLEID
JetGetLS
JetSetSystemParameter
Systemparameter