JetGotoSecondaryIndexBookmark-Funktion
Gilt für: Windows | Windows Server
JetGotoSecondaryIndexBookmark-Funktion
Die JetGotoSecondaryIndexBookmark-Funktion positioniert einen Cursor an einen Indexeintrag, der dem angegebenen sekundären Indexlesezeichen zugeordnet ist. Das Lesezeichen für den sekundären Index muss mit demselben Index für dieselbe Tabelle verwendet werden, aus der es ursprünglich abgerufen wurde. Das Lesezeichen für den sekundären Index für einen Indexeintrag kann mithilfe von JetGotoSecondaryIndexBookmark abgerufen werden.
Windows XP:JetGotoSecondaryIndexBookmark wird in Windows XP eingeführt.
JET_ERR JET_API JetGotoSecondaryIndexBookmark(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in void* pvSecondaryKey,
__in unsigned long cbSecondaryKey,
__in_opt void* pvPrimaryBookmark,
__in unsigned long cbPrimaryBookmark,
__in const JET_GRBIT grbit
);
Parameter
sesid
Die Sitzung, die für diesen Aufruf verwendet werden soll.
tableid
Der Cursor, der für diesen Aufruf verwendet werden soll.
pvSecondaryKey
Der Puffer, der den sekundären Schlüssel enthält, der zum Positionieren des Cursors verwendet werden soll.
cbSecondaryKey
Die Größe des sekundären Schlüssels im Puffer.
pvPrimaryBookmark
Der Puffer, der das Primärschlüssellesezeichen enthält, das zum Positionieren des Cursors verwendet werden soll.
cbPrimaryBookmark
Die Größe des Primärschlüssellesezeichens im Puffer.
grbit
Eine Gruppe von Bits, die null oder mehr der folgenden Optionen angibt.
Wert |
Bedeutung |
---|---|
JET_bitBookmarkPermitVirtualCurrency |
Für den Fall, dass der Indexeintrag nicht mehr gefunden werden kann, wird der Cursor an der Stelle positioniert, an der dieser Indexeintrag zuvor gefunden wurde. Der Vorgang schlägt weiterhin mit JET_errRecordDeleted fehl. es ist jedoch möglich, relativ zum jetzt fehlenden Indexeintrag zum nächsten oder vorherigen Indexeintrag zu wechseln. |
Rückgabewert
Diese Funktion gibt den Datentyp JET_ERR 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 |
Der Vorgang kann nicht abgeschlossen werden, da alle Aktivitäten auf der instance, die der Sitzung zugeordnet ist, aufgrund eines Aufrufs von JetStopService beendet wurden. |
JET_errInstanceUnavailable |
Der Vorgang kann nicht abgeschlossen werden, weil für die instance, die 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. Windows XP: Dieser Rückgabewert wird in Windows XP eingeführt. |
JET_errInvalidBookmark |
Das bereitgestellte lesezeichen für den sekundären Index war ungültig. Dieser Fehler ist möglicherweise aufgetreten, weil der sekundäre Schlüssel null oder der Zeiger des Sekundärschlüsselpuffers NULL ist. Dieser Fehler tritt auf, weil
|
JET_errNoCurrentIndex |
Der Cursor befindet sich derzeit nicht in einem sekundären Index. Es ist nicht sinnvoll, zu einem sekundären Indexlesezeichen zu wechseln, wenn der Cursor derzeit keinen sekundären Index verwendet. JetGotoBookmark sollte verwendet werden, wenn sich der Cursor nicht auf einem sekundären Index befindet. |
JET_errNotInitialized |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete instance noch nicht initialisiert wurde. |
JET_errRecordDeleted |
Der Indexeintrag, der dem Lesezeichen für den sekundären Index zugeordnet ist, konnte nicht gefunden werden. |
JET_errRestoreInProgress |
Der Vorgang kann nicht abgeschlossen werden, da ein Wiederherstellungsvorgang für die instance ausgeführt wird, die der Sitzung zugeordnet ist. |
JET_errSessionSharingViolation |
Dieselbe Sitzung kann nicht für mehrere Threads gleichzeitig verwendet werden. Windows XP: Dieser Rückgabewert wird in Windows XP eingeführt. |
JET_errTermInProgress |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete instance heruntergefahren wird. |
Wenn diese Funktion erfolgreich ist, wird der Cursor an einem Indexeintrag positioniert, der dem angegebenen sekundären Indexlesezeichen zugeordnet ist. Wenn ein Datensatz für das Update vorbereitet wurde, wird dieses Update abgebrochen. Wenn ein Indexbereich aktiv ist, wird dieser Indexbereich abgebrochen. Wenn ein Suchschlüssel für den Cursor erstellt wurde, wird dieser Suchschlüssel gelöscht. Es wird keine Änderung des Datenbankzustands vorgenommen.
Wenn diese Funktion fehlschlägt, bleibt die Position des Cursors unverändert, es sei denn, es wird JET_errRecordDeleted zurückgegeben und JET_bitBookmarkPermitVirtualCurrency angegeben. In diesem Fall wird der Cursor an der Stelle positioniert, an der sich der Indexeintrag befindet, der dem angegebenen sekundären Indexlesezeichen zugeordnet ist. Der Cursor kann relativ zu dieser Position verschoben werden, befindet sich aber immer noch nicht auf einem gültigen Indexeintrag.
Wenn ein Datensatz für das Update vorbereitet wurde, wird dieses Update abgebrochen. Wenn ein Indexbereich aktiv ist, wird dieser Indexbereich abgebrochen. Wenn ein Suchschlüssel für den Cursor erstellt wurde, wird dieser Suchschlüssel gelöscht. In jedem Fall erfolgt keine Änderung des Datenbankzustands.
Anforderungen
Anforderung | Wert |
---|---|
Client |
Erfordert Windows Vista oder Windows XP. |
Server |
Erfordert Windows Server 2008 oder Windows Server 2003. |
Kopfzeile |
Deklariert in Esent.h. |
Bibliothek |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert ESENT.dll. |
Weitere Informationen
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetGetSecondaryIndexBookmark
JetGotoBookmark
JetStopService