Solo para expertos
Publicado por Silvia (38 intervenciones) el 01/04/2006 18:23:38
Perdonad que ponga ese título en el mensaje pero esque ya lo he consultado tanto y nadie ha sabido contestarmelo que ya pienso que es solo para expertos esta pregunta o es imposible hacerlo
Suponed que teneis una base de datos en access con cien registros, os posicionais al principio de los registros con el fin de recorrer todos los registros hasta el fin.
En cada registro en el que os posicionais cogeis unos valores de los campos con los que realizais una función que tarda en devolverte un valor aproximadamente en 30 segundos, una vez te devuelve a los treinta segundos el valor de la función, se posiciona en el siguiente registro y hace lo mismo, y así hasta llegar al final de los cien registros uno por uno. Es decir un monton de tiempo.
Para esto uso el típico bucle while not rst.eof ........... wend.
Y yo me pregunto ¿No existe un metodo mas rápido?, es decir que tarde treinta segundos en devolverte el valor de la función pase, pero ...¿no hay forma de moverme por los registros de arriba a abajo y que al pasar por cada registro se ejecute la función, sin tener que esperar a que me de el resultado de ese registro y así continuar con el siguiente registro?
Es decir yo quiero moverme de forma asíncrona por la base de datos, pero no se como o si se puede hacer eso.
No es lo mismo encender un cohete y esperar a que suene el trueno para lanzar otro que encender la mecha de forma seguida a todos y luego que cada uno suene cuando le toque.
En fin dadme un consejo gracias.
Suponed que teneis una base de datos en access con cien registros, os posicionais al principio de los registros con el fin de recorrer todos los registros hasta el fin.
En cada registro en el que os posicionais cogeis unos valores de los campos con los que realizais una función que tarda en devolverte un valor aproximadamente en 30 segundos, una vez te devuelve a los treinta segundos el valor de la función, se posiciona en el siguiente registro y hace lo mismo, y así hasta llegar al final de los cien registros uno por uno. Es decir un monton de tiempo.
Para esto uso el típico bucle while not rst.eof ........... wend.
Y yo me pregunto ¿No existe un metodo mas rápido?, es decir que tarde treinta segundos en devolverte el valor de la función pase, pero ...¿no hay forma de moverme por los registros de arriba a abajo y que al pasar por cada registro se ejecute la función, sin tener que esperar a que me de el resultado de ese registro y así continuar con el siguiente registro?
Es decir yo quiero moverme de forma asíncrona por la base de datos, pero no se como o si se puede hacer eso.
No es lo mismo encender un cohete y esperar a que suene el trueno para lanzar otro que encender la mecha de forma seguida a todos y luego que cada uno suene cuando le toque.
En fin dadme un consejo gracias.
Valora esta pregunta


0