** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Bucle Delete Incrementa Memoria
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Bucle Delete Incrementa Memoria

 Responder Responder
Autor
Mensaje
Miguel Carrillo Ver desplegable
Habitual
Habitual
Avatar

Unido: 27/Febrero/2018
Localización: mexico
Estado: Sin conexión
Puntos: 56
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Miguel Carrillo Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Bucle Delete Incrementa Memoria
    Enviado: 13/Enero/2023 a las 17:54
Hola que tal como estas?

Tengo el siguiente problema

El proceso lee archivos XML y en una tabla provisional dispongo de la información, para posteriormente enviarla a la tabla (Información Final)

Pero cada vez que leo  un XML y obtengo la información, al final del proceso elimino la información de la Tabla Provisional, con la siguiente instruccion:

sSQL="DELETE * FROM TblProv"

ya probe con docmd.runsql sSQL y funciona bien.

El problema que a la hora de irse al siguiente XML, la memoria empieza a inflarse hasta llegar al limite y me marca el error de memoria y nos cierra la base de datos.

Tendrán alguna otra opción o idea de llevar a cabo lo anterior y prevenirlo.

Ya probe con split data base y es muy lento.

Saludos!!!

Arriba
emiliove Ver desplegable
Administrador
Administrador


Unido: 16/Junio/2009
Localización: Mexico
Estado: Sin conexión
Puntos: 5694
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita emiliove Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 13/Enero/2023 a las 18:20
Y cuando manejas el xml destruyes las variables que creaste, cuando ya no las usas del tipo

set nombrevariable=Nothing
Y también la sSQL debes eliminarla.

Saludos.


Editado por emiliove - 13/Enero/2023 a las 18:21
Arriba
Miguel Carrillo Ver desplegable
Habitual
Habitual
Avatar

Unido: 27/Febrero/2018
Localización: mexico
Estado: Sin conexión
Puntos: 56
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Miguel Carrillo Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 13/Enero/2023 a las 18:37
Hola que tal muchas gracias por tu respuesta.

Es correcto, de hecho al hacer el split de la base de datos, me di cuenta que la memoria ya no se movia en la base de datos que utilizo como front end, pero era muy lento el proceso.

Volvi a colocar esa tabla Provisional en el front end, y corria rapido el proceso, pero la memoria la llena.

Todas las variables al final del proceso, incluyendo el xmldoc se ponen a nothing.

Saludos!!!
Arriba
Miguel Carrillo Ver desplegable
Habitual
Habitual
Avatar

Unido: 27/Febrero/2018
Localización: mexico
Estado: Sin conexión
Puntos: 56
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Miguel Carrillo Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 13/Enero/2023 a las 18:39
Hola el error que provoca esto es el 3049

Saludos!!!
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14720
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 14/Enero/2023 a las 15:01
Hola,

Cuando se crear objetos dentro de una base de datos esta se expande para dar cabida a todos los datos que incorporemos. Si se eliminan registros o incluso tablas, la base de datos no se contrae de forma automática. Por ello existe el proceso de compactar y reparar base de datos.

En mi caso, cuando necesito trabajar con tablas temporales lo que hago es crear una base de datos temporal en la misma carpeta donde corre la aplicación. En esa BDD temporal es dónde vuelco la información y, después, extraigo lo que necesito y lo coloco en el BackEnd "bueno". Una vez acabado el proceso elimino la bdd temporal.

De esa forma me da lo mismo cuanto crezca el temporal ya que, al final, la destruyo.
Xavi, un minyó de Terrassa

Mi web
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable