Condividi tramite


Metodo Find (ADO)

Cerca in un oggetto Recordset la riga che soddisfa i criteri specificati. Facoltativamente, è possibile specificare la direzione della ricerca, la riga iniziale e l'offset dalla riga iniziale. Se il criterio viene soddisfatto, la posizione della riga corrente viene impostata sul record trovato; in caso contrario, la posizione è impostata sulla fine (o sull'inizio) dell'oggetto Recordset.

Sintassi

  
Find (Criteria, SkipRows, SearchDirection, Start)  

Parametri

Criteri
Valore String che contiene un'istruzione che specifica il nome della colonna, l'operatore di confronto e il valore da utilizzare nella ricerca.

SkipRows
facoltativo. Valore Long, il cui valore predefinito è zero, che specifica l'offset di riga dalla riga corrente o dal segnalibro Start per iniziare la ricerca. Per impostazione predefinita, la ricerca inizierà nella riga corrente.

SearchDirection
facoltativo. Valore SearchDirectionEnum che specifica se la ricerca deve iniziare sulla riga corrente o sulla successiva riga disponibile nella direzione della ricerca. Una ricerca con esito negativo si arresta alla fine dell'oggetto Recordset se il valore è adSearchForward. Una ricerca con esito negativo si arresta all'inizio dell'oggetto Recordset se il valore è adSearchBackward.

Inizia
facoltativo. Segnalibro Variant che funge da posizione iniziale per la ricerca.

Osservazioni

Nei criteri è possibile specificare solo un nome a colonna singola. Questo metodo non supporta le ricerche su più colonne.

L'operatore di confronto per il Criterio può essere ">" (maggiore di), "<" (minore di), "=" (uguale a), ">=" (maggiore di o uguale a), "<=" (minore di o uguale a), "<>" (diverso da) o "LIKE" (corrispondenza ai criteri).

Il valore in Criteri può essere una stringa, un numero a virgola mobile o una data. I valori stringa sono delimitati da virgolette singole o "#" (segno di cancelletto), ad esempio "state = 'WA'" o "state = #WA#". I valori di data sono delimitati da segni di cancelletto "#", ad esempio "start_date > #7/22/97#". Questi valori possono contenere ore, minuti e secondi per indicare timestamp, ma non devono contenere millisecondi, in caso contrario si verificano errori.

Se l'operatore di confronto è "like", il valore stringa può contenere un asterisco (*) per trovare una o più occorrenze di un qualsiasi carattere o una qualsiasi sottostringa. La stringa "state like 'M*'" trova ad esempio Maine e Massachusetts. È anche possibile usare asterischi iniziali e finali per trovare una sottostringa contenuta all'interno dei valori. Ad esempio, "state like '*as*'" corrisponde ad Alaska, Arkansas e Massachusetts.

Gli asterischi possono essere usati solo alla fine di una stringa di criteri o sia all'inizio sia alla fine di una stringa di criteri, come illustrato in precedenza. Non è possibile usare l'asterisco come carattere jolly iniziale ('*str') o come carattere jolly incorporato ('s*r'). Questo tipo di utilizzo genererà un errore.

Nota

Se non è impostata una posizione di riga corrente prima di chiamare Find, si verificherà un errore. Qualsiasi metodo che imposta la posizione della riga, ad esempio MoveFirst, deve essere chiamato prima di chiamare Find.

Nota

Se si chiama il metodo Find su un recordset e la posizione corrente nel recordset si trova all'ultimo record o alla fine del file (EOF), non verrà trovato alcun elemento. È necessario chiamare il metodo MoveFirst per impostare la posizione o il cursore corrente all'inizio del recordset.

Si applica a

Oggetto Recordset (ADO)

Vedere anche

Esempio del metodo Find (VB)
Proprietà Index
Proprietà dinamica Optimize (ADO)
Metodo Seek