Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Adri58 en 1 Diciembre 2006, 08:02 am



Título: Adodc
Publicado por: Adri58 en 1 Diciembre 2006, 08:02 am
Como se puede buscar el registro siguiente al actual en una BD con un Adodc? Es que no tiene findNext, solo tiene find y no se como hacerlo


Título: Re: Adodc
Publicado por: CeLaYa en 1 Diciembre 2006, 18:12 pm
 :huh: que no se hace con MoveNext


Código:
Adodc1.Recordset.MoveNext



Título: Re: Adodc
Publicado por: soplo en 1 Diciembre 2006, 19:14 pm
Hola
El formato de find es
Código:
adodc1.recordset.find "criterio de búsqueda",salto,dirección

Criterio de búsqueda
es lo que iría detrás de un where en una claúsula select

salto
Es desde donde tiene que empezar a buscar. Si no se indica busca desde el principio, pero si se indica busca desde ese registro (a partir de la posición actual).

Si no encuentra nada llega a eof
Puede ser un valor positivo o negativo indicando cuantos registros hay que avanzar o retroceder.
Así, buscar desde el principio sería
adodc1.recordset.find "condicion"
Y buscar en el siguiente registro sería
Código:
adodc1.recordset.find "condicion",1
Dirección
Si no se especifica nada se busca hacia delante (adsearchforward). Si se especifica adsearchbackward la búsqueda es hacia atrás.

También te puede interesar el hacer un filtro de datos. Esto suponde utilizar la propiedad filter del recordset para extraer los datos que cumplen una condición
Código:
adodc1.recordset.filter="condicion"
do while not adodc1.recordset.eof
   operación con registro que cumple condicion
   adodc1.recordset.movenext
loop
Para volver a la situación anterior al filter
Código:
adodc1.recordset.filter=""

y volverás a tener el recordset normal

Un saludo