Visual Basic - Comprobaciones con muuuuchos registros

Life is soft - evento anual de software empresarial
 
Vista:

Comprobaciones con muuuuchos registros

Publicado por barri (13 intervenciones) el 11/11/2005 09:02:16
Wenaaaaaasss

tengo dos recordsets, uno para cada ODBC. Con cada uno hago una consulta select sql para objener los registros de las bases de datos correspondientes.

El caso es que tengo que comparar todos los elementos de uno con todos los elementos de otro y pasa que uno tiene 18000 registros y el otro 4500 (mas o menos) con lo que tiene que hacer 81 millones!!!! de comprobaciones y claro, el programa se queda colgado y no responde, hay que finalizar aplicacion.

Lo he hecho de la siguiente forma:

Do While Not reg_art_dat.EOF

Do While Not reg_catalogo.EOF

If reg_art_dat.fields("f_art_cod") = reg_catalogo.fields("REF") Then
escribir = 1
End If

reg_catalogo.MoveNext

Loop

reg_art_dat.MoveNext
Loop

Al poco de ejecutar el programa se queda como que no responde pero he pensado que tiene que tardar bastante.

Mi pregunta es ¿puede quedarse el visual basic 6.0 colgado al tener que manejar tanta informacion (81 millones de comprobaciones, 18000 registros de un lado con 4500 registros de otro) o esta preparado para soportarlo?

Muchas gracias!!!

saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 7
Ha aumentado su posición en 3 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Comprobaciones con muuuuchos registros

Publicado por Vero (106 intervenciones) el 11/11/2005 12:18:00
Hola,
Sí que soporta mucha información, yo he trabajado con muchísimos más registros (100.000 o más) y también veo que si le doy a Ctrl-Alt-Supr me pone "no responde", pero continúa trabajando.
Visualiza el Monitor del sistema de Windows, ya verás cómo sigue trabajando...

Y si después de un buen rato no responde, prueba otro método, como... hacer una subrutina que llame para comparar cada archivo de la otra base de datos.
En el principal, una base de datos, antes de hacer Movenext, llama a la subrutina y compara con los registros de la otra BD.

Si te sirve de ayuda....

Aunque también me gustaría a mí a veces hacer otra cosa para que vaya más rápido, si a alguien se le ocurre.... que nos lo cuente.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar