Ver Mensaje Individual
  #1  
Antiguo 07-04-2005
Toñico Toñico is offline
Miembro
 
Registrado: ene 2005
Posts: 50
Reputación: 20
Toñico Va por buen camino
Carga rápida de datos en Access

Hola a todos, tengo un gran problema de lentitud a la hora de hacer una carga masiva de datos en access, os cuento mi problema.

Estoy usando Delphi 6 y para conectarme con Access uso componentes ADO.

Tengo que cargar datos en una tabla de access desde una tabla de otra base de datos, a la cual sólo puedo acceder usando una libreria que me obliga a leer los registros de forma secuencial. El problema es la cantidad de registros que contiene la tabla, unos 100.000 registros, y que el usuario tiene que esperar a que termine este proceso para continuar trabajando con la aplicación.

La solución que estoy usando hasta ahora es:
1 - Genero un fichero de texto plano con los registros exportados.
2- Usando un componente BatchMove copio el fichero de texto a un fichero DBF con la misma estructura.
3- Uso una secuencia SQL de inserción para grabar los registros en la tabla de access.

Este proceso con 125000 registros tarda menos de 10 minutos en hacerlo.

Si intento grabar directamente registro a registro usando secuencias INSERT contra la tabla de access el proceso me tarda mas de una hora en hacerlo.

Ahora la pregunta ¿Existe alguna forma de agilizar este proceso sin tener que usar ficheros intermedios como estoy haciendo?

Muchas gracias a todos de antemano.

Un saludo.
Responder Con Cita