Ver Mensaje Individual
  #2  
Antiguo 03-08-2005
islu islu is offline
Miembro
 
Registrado: jun 2003
Posts: 111
Reputación: 21
islu Va por buen camino
Cita:
Empezado por h2o_mx
Hola a todos, tengo un problema, estoy haciendo un programa en delphi y uso una base de datos dbase, pero en una tabla inserto y borro registros continuamente, y lo hace bien, pero cuando abri la base de datos con visual fox, todos los campos que he agregado alli estan solo que estan marcados como eliminados, esto es un problema por que la base de datos esta creciendo fisicamente aun que logicamente no tiene registros, como le puedo hacer para que borre los registros totalmente?., gracias
Los ficheros xBase ( DBF, de Clipper, Foxpro o DBase ) no borran, sino que marcan como borrados. Depende que comentes utilices para acceder a ellos hay algunos que te permiten hacer un Pack del fichero, que lo que hace es eliminar los borrados, reduciendo el tamaño de la BD. Desde Visual FoxPro o dbase puedes desde comandos ejecutar PACK ( ojo el fichero debe estar abierto de modo exclusivo ). Ten cuidado, por que al crecer el número de registros marcados no solo crece el tamaño de la BD, sino que tb enlentece enormemente la apertura de la tabla ( si aunque parezca mentira me ha pasado ), e incluso el insertado.

Los Codebase Components permiten hacer el PACK, pero recuerda que debes abrir en modo exclusivo, por lo que te aconsejo que hagas un .PRG con Visual Foxpro o con dbase, o incluso un ejecutable con Delphi, y lo ejecutes con una tarea programada por las noches, asi al amanecer estara todo perfecto....
Responder Con Cita