¿Datos anexados o Creación de Tabla?

06/06/2019 - 14:19 por madurga.pda | Informe spam
Hola a todos y gracias por adelantado.

El caso que presento es el de una tabla de unos 200.000 registros que debe actualizarse diariamente.
Esa actualización comporta unos 1500 registros nuevos, unos 20.000 actualizados, y unos 1500 eliminados.

Actualmente aplico una consulta de creación de tabla, eliminando la tabla del dia anterior y volviendo a cargar los 200.000 registros ya actualizados, asumiendo que pierdo el diseño de la tabla.

Lo ideal seria una consulta de eliminación de todos los datos seguida de una consulta de datos anexados de los 200.000 registros del dia, conservando de esa manera el diseño de la tabla, formatos de campo, etc.

El problema es que observo que este segundo procedimiento me lleva muchísimo tiempo, llegando incluso a colapsar la aplicación.

De la misma manera, intentar partir esta operaciòn en tres consultas (datos anexados para los nuevos registros, actualización para los existentes y consulta de eliminación para los eliminados) también consume muchísimo tiempo y llega a colapsar la aplicación en la fase de actualización.

Alguien tiene respuesta sobre la diferencia de estos tipos de consulta de acción y qué método puede resultar más eficiente en mi caso?

Quizás algun truco para que la consulta de datos anexados o la de actualización fluya más rápidamente?

Muy agradecido de antemano.

Saludos.

Carlos
 

Leer las respuestas

#1 José Mª Fueyo
07/06/2019 - 12:24 | Informe spam
Hola
No nos comentas que versión de Access utilizas.
Para la actualización e inserción ¿tienes creado algún índice? tanto para la table de destino como la de origen.
Aunque Access de forma nativa no soporta la instrucción TRUNCATE TABLE, sí lo he visto usandola a través de Application.CurrentProject.Connection.Execute, aunque sospecho que te puede dar problemas de interbloqueo por dejar conexiones abiertas.
Un DoCmd.RunSQL "DELETE FROM Tabla;" ¿te retarda mucho?
Salu2,

José Mª Fueoy

Preguntas similares