JetGotoPosition-Funktion
Gilt für: Windows | Windows Server
JetGotoPosition-Funktion
Die JetGotoPosition-Funktion verschiebt einen Cursor an eine neue Position, die einen Bruchteil des Weges durch den aktuellen Index darstellt. Der Bruchteil entspricht ungefähr folgendem:
precpos-centriesLT>/precpos-centriesTotal>
Dieser Vorgang wird als Reaktion auf benutzerseitige Scrollfeldeingaben ausgeführt, die empfangen werden, wenn der Benutzer versucht, Daten anzuzeigen, die teilweise durch ein Dataset gestartet werden.
JET_ERR JET_API JetGotoPosition(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in JET_RECPOS* precpos
);
Parameter
sesid
Die Sitzung, die für diesen Aufruf verwendet werden soll.
tableid
Der Cursor, der für diesen Aufruf verwendet werden soll.
Precpos
Die Beschreibung des Bruchs, der beim Positionieren des Cursors im aktuellen Index verwendet werden soll.
Rückgabewert
Diese Funktion gibt den JET_ERR-Datentyp 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 konnte nicht abgeschlossen werden, da alle Aktivitäten auf dem instance, die der Sitzung zugeordnet sind, aufgrund eines Aufrufs von JetStopService beendet wurden. |
JET_errInstanceUnavailable |
Der Vorgang konnte nicht abgeschlossen werden, da bei der 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_errInvalidParameter |
Die angegebene precpos-cbStruct> ist keine gültige Größe für die JET_RECPOS-Struktur , oder precpos-centriesLT> ist größer als precpos-centriesTotal>. |
JET_errNotInitialized |
Der Vorgang kann nicht abgeschlossen werden, da die instance, die der Sitzung zugeordnet ist, noch nicht initialisiert wurde. |
JET_errRecordNotFound |
Dieser Fehler wird zurückgegeben, wenn der Index leer ist. |
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 instance, die der Sitzung zugeordnet ist, heruntergefahren wird. |
Wenn diese Funktion erfolgreich ist, wird der Cursor in einen aktuellen Datensatz verschoben, der einen Bruchteil des Weges durch den Index darstellt, in dem der Bruch precpos-centriesLT> dividiert durch precpos-centriesTotal> ist.
Wenn diese Funktion fehlschlägt, bleibt die Cursorposition unverändert.
Bemerkungen
Dieser Vorgang bewegt den Cursor durch die Tabelle an eine Position an dem folgenden ungefähren Punkt: precpos-centriesLT> dividiert durch precpos-centriesTotal>.
Wenn fortlaufend Updates für die Tabelle ausgeführt werden, können nachfolgende Aufrufe mit demselben JET_RECPOS den Cursor an verschiedene Positionen im Index verschieben, sowohl vor als auch nach der vorherigen Position. Transaktionsisolation gilt nicht für die Positionierung über JET_RECPOS , da sie von physischen Eigenschaften des Indexes abhängt, die nicht transaktionsisolt sind.
JET_RECPOS sollte nicht verwendet werden, um einen Datensatz in einer Tabelle zu beschreiben oder einen Datensatz in der Nähe eines vorhandenen Datensatzes neu zu positionieren. Stattdessen sollten Lesezeichen für einen vorhandenen Datensatz nach einer anfänglichen JetGotoPosition abgerufen und dann verwendet werden, um denselben Datensatz neu zu positionieren.
Anforderungen
Anforderung | Wert |
---|---|
Client |
Erfordert Windows Vista, Windows XP oder Windows 2000 Professional. |
Server |
Erfordert Windows Server 2008, Windows Server 2003 oder Windows 2000 Server. |
Kopfzeile |
Deklariert in Esent.h. |
Bibliothek |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert ESENT.dll. |
Weitere Informationen
JET_COLUMNID
JET_ERR
JET_SESID
JET_TABLEID
JET_RECPOS
JET_SETINFO