Ver Mensaje Individual
  #2  
Antiguo 30-04-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.333
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
A parte de que luego puedas hacer otras optimizaciones hay dos cosas que me llaman la atención:

1) La forma de acceder. ODBC no es, ni más opima, ni la forma más rápida de acceder a un MDB. Para ello yo utilizaría ADO. La eficiencia será mucho mayor que con el sistema actual.

2) Traer 300.000 registros. No explicas para qué necesitas esta consulta, pero a priori te diría que es un error de concepto. Hacer que una consulta devuelva ese número de registro sea con Access o con cualquier otro SGBD es un error.

Cualquier consulta normal que hagas a la Base de datos debería hacerse filtrada (utilizando condiciones o TOP para el número de registros).

Si por la naturaleza del proceso realmente necesitas los 300.000 registros, porque los tengas que recorrer todos (por ejemplo, para un proceso de exportación), puedes realizar varias consultas más pequeñas para traer esos datos en Bloques. Incluso por un lado puedes ir recuperando registros en bloques y en paralelo por otro ir procesándolos.
De todas formas todo esto son suposiciones sin saber exactamente, qué trabajo debes hacer con esos 300.000 registros.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 30-04-2010 a las 13:58:37.
Responder Con Cita