Programar en Visual Basic con base de datos de Microsoft Access, error en registros

Mi nombre es Eduardo y tengo un pequeño gran problema.
Yo hace ya algunos años que me dedico a programar, pero esto como bien debes de saber nunca deja de sorprendernos.
Es tema es el siguiente:
Hice un programa en VB 6 con una base de datos de Access.
Tengo acceso a ella mediante DAO y el tema programación todo en orden.
Pero, el problema se sucita por que la generación de demasiados registros dentro de la base y la cantidad de tablas que poseo abiertas, generan la perdida de registros dentro de la misma.
Si bien todos los registros son importantes, los que más se me quejan son la perdida de los clientes de la firma a la que yo le vendí el programa.
El solo echo de tener que ingresar nuevamente un cliente que ayer se ingresó, genera no solo molestias a la operadora, si no también al cliente que se le pide nuevamente la dirección.
Yo he hecho algunas cosas como:
Separé la tabla clientes para otra base de datos, que permanece cerrada y se abre solamente cuando necesitan o agregan un cliente. El resultado mejoró pero no fue del todo bueno.
También dividí a 4000 clientes por tabla dentro de la misma base de datos teniendo 5 tablas con los clientes.
Siguimos en lo mismo.
Ahora recientemente instauré que el programa cierre automáticamente la base de datos para que se actualize el archivo temporario, ya que se hace insostenible se denota para Win.
Saque un calculo promedio de la situación y me dio que el programa maneja 24000 registros por minuto, lo que me parece que es mucho y entonces la base entra a perder registros.
El tema cerrar la base está bastante mejor, pero no se aún que pasará.
Lo que yo te pido y aquí entras tú es alguna forma de que me mantenga segura la base de datos.
Como aliciente te digo que el programa trabaja las 24 Hs. Sin descanso.
Yo creo que debe haber alguna API de Win que nos permita cerrar la base y/o darle la seguridad a los registros, no se te lo digo como para darte un ayuda.
Te aclaro que si bien he usado algunas API de Win, no se utilizarlas todas, así que si no te viene mal escribirme un poco para ver como se usa.
Si hay otra forma bienvenida sea.
Te dejo mi mail por si querés mandarme algo con gusto.
Desde ya te agradezco y lo dejo en tus manos.
Te saluda desde Uruguay...
Eduardo.
Respuesta
1
Mi nombre es Gustavo... hecha las presentaciones :) ... pasemos al asunto je je
Es muy difícil que te pueda ayudar con la información que me has dado. No es que sea poca sino que no me sirve para poder ayudarte. Lo que si te puedo dar son consejos a la hora de trabajar con DAO o ADO.
1. Procura no tener nunca abierta la tabla y la conexión más que cuando vayas a realizar un cambio, justo en ese momento abres y cierras.
2. No te aconsejo que hagas un "edit" o "addnew" más que cuando vayas a realizar cambios.
3. No se si utilizas "textbox" enlazados a datos. Si es así te arriesgas a perder los datos pues el registro está abierto mientras se editan los datos y si pasa algo pierdes la información, así como los punteros de los índices.
4. Procura mostrar los datos, tanto para consulta como para edición, en textbos mediante variables internas. De esa forma accedes al registro para obtener la información y luego para grabarla.
5. DAO tiene un gran problema con base de datos de mucha cantidad de memoria. Mejor vete pensando en pasar todo a ADO.
Espero que esto te resuelva algunas dudas. En todo caso siéntete libre de volver a prguntarme.
Siento no poder ayudarte más, pues para eso, necesitaría me enviaras la estructura de la base de datos así como las referencias e indices de tablas.
Un saludo desde Canarias-España!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas