Funzione JetGotoPosition
Si applica a: Windows | Windows Server
Funzione JetGotoPosition
La funzione JetGotoPosition sposta un cursore in una nuova posizione che rappresenta una frazione del percorso attraverso l'indice corrente. La frazione è approssimativamente uguale alla seguente:
precpos-centriesLT>/precpos-centriesTotal>
Questa operazione viene eseguita in risposta all'input della casella di scorrimento dell'utente ricevuta quando l'utente tenta di visualizzare i dati che iniziano in parte attraverso un set di dati.
JET_ERR JET_API JetGotoPosition(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in JET_RECPOS* precpos
);
Parametri
sesid
Sessione da utilizzare per questa chiamata.
tableid
Cursore da utilizzare per questa chiamata.
precpos
Descrizione della frazione da utilizzare per posizionare il cursore nell'indice corrente.
Valore restituito
Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sui possibili errori ESE, vedere Errori del motore di archiviazione estendibile e parametri di gestione degli errori.
Codice restituito |
Descrizione |
---|---|
JET_errSuccess |
Operazione riuscita. |
JET_errClientRequestToStopJetService |
Impossibile completare l'operazione perché tutte le attività nell'istanza associata alla sessione sono cessate a seguito di una chiamata a JetStopService. |
JET_errInstanceUnavailable |
Impossibile completare l'operazione perché l'istanza associata alla sessione ha rilevato un errore irreversibile che richiede la revoca dell'accesso a tutti i dati per proteggere l'integrità dei dati. Windows XP: Questo valore restituito viene introdotto in Windows XP. |
JET_errInvalidParameter |
La precpos-cbStruct> specificata non è una dimensione valida per la struttura JET_RECPOS o precpos-centriesLT> è maggiore di precpos-centriesTotal>. |
JET_errNotInitialized |
Impossibile completare l'operazione perché l'istanza associata alla sessione non è ancora stata inizializzata. |
JET_errRecordNotFound |
Questo errore verrà restituito se l'indice è vuoto. |
JET_errRestoreInProgress |
Impossibile completare l'operazione perché è in corso un'operazione di ripristino 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 ha esito positivo, il cursore viene spostato in un record corrente che rappresenta una frazione del percorso nell'indice in cui la frazione è precpos-centriesLT> divisa per precpos-centriesTotal>.
Se questa funzione ha esito negativo, la posizione del cursore rimane invariata.
Commenti
Questa operazione sposta il cursore attraverso la tabella in una posizione in corrispondenza del punto approssimativo seguente: precpos-centriesLT> diviso per precpos-centriesTotal>.
Quando gli aggiornamenti si verificano continuamente nella tabella, le chiamate successive con lo stesso JET_RECPOS possono spostare il cursore in posizioni diverse nell'indice, sia prima che dopo la posizione precedente. L'isolamento transazionale non si applica al posizionamento tramite JET_RECPOS perché dipende dalle proprietà fisiche dell'indice che non sono isolate dalla transazione.
JET_RECPOS non deve essere utilizzato per descrivere un record all'interno di una tabella o per riposizionare un record vicino a un record esistente. I segnalibri per un record esistente devono invece essere recuperati dopo un oggetto JetGotoPosition iniziale e quindi usati per riposizionare lo stesso record.
Requisiti
Requisito | Valore |
---|---|
Client |
Richiede Windows Vista, Windows XP o Windows 2000 Professional. |
Server |
Richiede Windows Server 2008, Windows Server 2003 o Windows 2000 Server. |
Intestazione |
Dichiarato in Esent.h. |
Libreria |
Usare ESENT.lib. |
DLL |
Richiede ESENT.dll. |
Vedere anche
JET_COLUMNID
JET_ERR
JET_SESID
JET_TABLEID
JET_RECPOS
JET_SETINFO