Proprietà AbsolutePosition (ADO)

Indica la posizione ordinale del record corrente di un oggetto Recordset.

Impostazioni e valori restituiti

Per codice a 32 bit, imposta o restituisce un valore Long compreso tra 1 e il numero di record nell'oggetto Recordset (RecordCount) o restituisce uno dei valori di PositionEnum.

Per il codice a 64 bit, usare un tipo di dati che fornisce l'archiviazione di un valore a 64 bit. È ad esempio possibile usare Long o un altro valore con lunghezza a 64 bit, ad esempio DBORDINAL. Non usare i valori di PositionEnum poiché sono limitati alla lunghezza a 32 bit.

Osservazioni

Per impostare la proprietà AbsolutePosition, ADO richiede che il provider OLE DB in uso implementi l'interfaccia IRowsetLocate:IRowset.

L'accesso alla proprietà AbsolutePosition di un oggetto Recordset aperto con un cursore di tipo forward-only o dinamico genera l'errore adErrFeatureNotAvailable. Con altri tipi di cursore, la posizione corretta verrà restituita finché il provider OLE DB supporta l'interfaccia IRowsetScroll:IRowsetLocate. Se il provider non supporta l'interfaccia IRowsetScroll, la proprietà è impostata su adPosUnknown. Vedere la documentazione per il provider per determinare se supporta IRowsetScroll.

Utilizzare la proprietà AbsolutePosition per passare a un record in base alla relativa posizione ordinale nell'oggetto Recordset o per determinare la posizione ordinale del record corrente. Affinché questa proprietà sia disponibile, il provider deve supportare la funzionalità appropriata.

Analogamente alla proprietà AbsolutePage, la proprietà AbsolutePosition ha base 1 ed equivale a 1 quando il record corrente è il primo record in Recordset. È possibile ottenere il numero totale di record nell'oggetto Recordset dalla proprietà RecordCount.

Quando si imposta la proprietà AbsolutePosition, anche se si tratta di un record nella cache corrente, ADO ricarica la cache con un nuovo gruppo di record a partire dal record specificato. La proprietà CacheSize determina le dimensioni di questo gruppo.

Nota

Non usare la proprietà AbsolutePosition come numero di record surrogato. La posizione di un determinato record cambia quando si elimina un record precedente. Non esiste inoltre alcuna garanzia che un determinato record avrà lo stesso valore di AbsolutePosition se l'oggetto Recordset viene sottoposto nuovamente a query o riaperto. I segnalibri sono ancora il modo consigliato per conservare e restituire una determinata posizione e sono l'unico approccio per il posizionamento in tutti i tipi di oggetti Recordset.

Si applica a

Oggetto Recordset (ADO)

Vedere anche

Esempio delle proprietà AbsolutePosition e CursorLocation (VB)
Esempio delle proprietà AbsolutePosition e CursorLocation (VC++)
Proprietà AbsolutePage (ADO)
Proprietà RecordCount (ADO)