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