Funzione JetGotoSecondaryIndexBookmark
Si applica a: Windows | Windows Server
Funzione JetGotoSecondaryIndexBookmark
La funzione JetGotoSecondaryIndexBookmark posiziona un cursore a una voce di indice associata al segnalibro di indice secondario specificato. Il segnalibro di indice secondario deve essere usato con lo stesso indice sulla stessa tabella da cui è stato originariamente recuperato. Il segnalibro di indice secondario per una voce di indice può essere recuperato usando JetGotoSecondaryIndexBookmark.
Windows XP:JetGotoSecondaryIndexBookmark è stato introdotto in Windows XP.
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
);
Parametri
sesid
Sessione da usare per questa chiamata.
tableid
Cursore da usare per questa chiamata.
pvSecondaryKey
Buffer contenente la chiave secondaria da usare per posizionare il cursore.
cbSecondaryKey
Dimensioni della chiave secondaria nel buffer.
pvPrimaryBookmark
Buffer che contiene il segnalibro della chiave primaria da usare per posizionare il cursore.
cbPrimaryBookmark
Dimensioni del segnalibro della chiave primaria nel buffer.
grbit
Gruppo di bit che specifica zero o più delle opzioni seguenti.
Valore |
Significato |
---|---|
JET_bitBookmarkPermitVirtualCurrency |
Nel caso in cui non sia più possibile trovare la voce di indice, il cursore verrà posizionato a sinistra in cui è stata trovata in precedenza tale voce di indice. L'operazione avrà ancora esito negativo con JET_errRecordDeleted; tuttavia, sarà possibile passare alla voce di indice successiva o precedente rispetto alla voce di indice mancante. |
Valore restituito
Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sugli errori ESE possibili, vedere Errori del motore di archiviazione estendibili e parametri di gestione degli errori.
Codice restituito |
Descrizione |
---|---|
JET_errSuccess |
Operazione riuscita. |
JET_errClientRequestToStopJetService |
L'operazione non può essere completata perché tutte le attività nell'istanza associata alla sessione hanno interrotto come risultato di una chiamata a JetStopService. |
JET_errInstanceUnavailable |
L'operazione non può essere completata perché l'istanza associata alla sessione ha rilevato un errore irreversibile che richiede che l'accesso a tutti i dati venga revocato per proteggere l'integrità dei dati. Windows XP: Questo valore restituito viene introdotto in Windows XP. |
JET_errInvalidBookmark |
Il segnalibro di indice secondario specificato non è valido. Questo errore potrebbe verificarsi perché la chiave secondaria è zero o il puntatore del buffer della chiave secondaria è NULL. Questo errore si verifica perché
|
JET_errNoCurrentIndex |
Il cursore non è attualmente in un indice secondario. Non è significativo passare a un segnalibro di indice secondario quando il cursore non usa attualmente un indice secondario. JetGotoBookmark deve essere usato quando il cursore non è in un indice secondario. |
JET_errNotInitialized |
L'operazione non può essere completata perché l'istanza associata alla sessione non è ancora stata inizializzata. |
JET_errRecordDeleted |
Impossibile trovare la voce di indice associata al segnalibro di indice secondario. |
JET_errRestoreInProgress |
L'operazione non può essere completata perché un'operazione di ripristino è in corso nell'istanza associata alla sessione. |
JET_errSessionSharingViolation |
La stessa sessione non può essere usata contemporaneamente per più thread. Windows XP: Questo valore restituito viene introdotto in Windows XP. |
JET_errTermInProgress |
Impossibile completare l'operazione perché l'istanza associata alla sessione viene arrestata. |
Se questa funzione riesce, il cursore verrà posizionato in corrispondenza di una voce di indice associata al segnalibro di indice secondario specificato. Se un record è stato preparato per l'aggiornamento, tale aggiornamento verrà annullato. Se un intervallo di indici è effettivo, tale intervallo di indici verrà annullato. Se è stata creata una chiave di ricerca per l'uso del cursore, tale chiave di ricerca verrà eliminata. Non verrà eseguita alcuna modifica allo stato del database.
Se questa funzione ha esito negativo, la posizione del cursore rimane invariata a meno che non venga restituita JET_errRecordDeleted e JET_bitBookmarkPermitVirtualCurrency sia specificata. In tal caso, il cursore verrà posizionato in cui la voce di indice associata al segnalibro di indice secondario specificato sarebbe stata. Il cursore può essere spostato rispetto a tale posizione, ma non è ancora in una voce di indice valida.
Se un record è stato preparato per l'aggiornamento, tale aggiornamento verrà annullato. Se un intervallo di indici è effettivo, tale intervallo di indici verrà annullato. Se è stata creata una chiave di ricerca per l'uso del cursore, tale chiave di ricerca verrà eliminata. In qualsiasi caso, non verrà eseguita alcuna modifica allo stato del database.
Requisiti
Requisito | Valore |
---|---|
Client |
Richiede Windows Vista o Windows XP. |
Server |
Richiede Windows Server 2008 o Windows Server 2003. |
Intestazione |
Dichiarato in Esent.h. |
Libreria |
Usare ESENT.lib. |
DLL |
Richiede ESENT.dll. |
Vedere anche
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetGetSecondaryIndexBookmark
JetGotoBookmark
JetStopService