Condividi tramite


Metodo Move (ADO)

Sposta la posizione del record corrente in un oggetto Recordset.

Sintassi

  
recordset.Move NumRecords, Start  

Parametri

NumRecords
Espressione Long firmata che specifica il numero di record di cui si sposta la posizione del record corrente.

Inizia
facoltativo. Valore String o Variant che restituisce un segnalibro. È anche possibile usare un valore BookmarkEnum.

Osservazioni

Il metodo Move è supportato in tutti gli oggetti Recordset.

Se l'argomento NumRecords è maggiore di zero, la posizione del record corrente viene spostata in avanti (verso la fine dell'oggetto Recordset). Se NumRecords è minore di zero, la posizione del record corrente viene spostata all'indietro (verso l'inizio dell'oggetto Recordset).

Se la chiamata Move sposta la posizione del record corrente in un punto che precede il primo record, ADO imposta il record corrente sulla posizione che precede il primo record nel recordset (BOF è True). Un tentativo di spostamento all'indietro quando la proprietà BOF è già True genera un errore.

Se la chiamata Move sposta la posizione del record corrente in un punto successivo all'ultimo record, ADO imposta il record corrente sulla posizione successiva all'ultimo record nel recordset (EOF è True). Un tentativo di spostamento in avanti quando la proprietà EOF è già True genera un errore.

La chiamata al metodo Move da un oggetto Recordset vuoto genera un errore.

Se si passa l'argomento Start, lo spostamento è relativo al record con questo segnalibro, presupponendo che l'oggetto Recordset supporti i segnalibri. Se non specificato, lo spostamento è relativo al record corrente.

Se si usa la proprietà CacheSize per memorizzare nella cache locale i record del provider, il passaggio di un argomento NumRecords che sposta la posizione del record corrente all'esterno del gruppo corrente di record memorizzati nella cache forza ADO a recuperare un nuovo gruppo di record, a partire dal record di destinazione. La proprietà CacheSize determina le dimensioni del gruppo appena recuperato e il record di destinazione è il primo record recuperato.

Se l'oggetto Recordset è forward-only, un utente può comunque passare un argomento NumRecords minore di zero, a condizione che la destinazione si trovi all'interno del set corrente di record memorizzati nella cache. Se la chiamata Move sposta la posizione del record corrente in un record prima del primo record memorizzato nella cache, si verificherà un errore. È quindi possibile usare una cache di record che supporta lo scorrimento completo con un provider che supporta solo lo scorrimento in avanti. Poiché i record memorizzati nella cache vengono caricati in memoria, è consigliabile evitare la memorizzazione nella cache di più record di quelli necessari. Anche se un oggetto Recordset forward-only supporta lo spostamento all’indietro in questo modo, la chiamata al metodo MovePrevious in qualsiasi oggetto Recordset forward-only genererà comunque un errore.

Nota

Il supporto per lo spostamento all’indietro in un Recordset forward-only non è prevedibile e dipende dal provider. Se il record corrente è stato posizionato dopo l'ultimo record nel Recordset, Move all’indietro potrebbe non produrre la posizione corrente corretta.

Si applica a

Oggetto Recordset (ADO)

Vedere anche

Esempio del metodo Move (VB)
Esempio del metodo Move (VBScript)
Esempio del metodo Move (VC++)
Metodi MoveFirst, MoveLast, MoveNext e MovePrevious (ADO)
Metodi MoveFirst, MoveLast, MoveNext e MovePrevious (Servizi Desktop remoto)
Metodo MoveRecord (ADO)