Problemas con una BD de Access

Hola,
Tengo una aplicación desarrollada con VB que accede mediante DAO 3.6 o ADO 2.8, a los datos de una base de datos Access 2000 ubicada en un servidor con Windows 2000 server. La base de datos solo tiene tablas, no se guardan en ellas formularios ni informes ni nada más. El tamaño de la base de datos es de unos 500 Mb y los usuarios que la utilizan unos 10.
El problema es que cuando el sistema quiere, la BD se daña y cuando cierras la conexión ya no puedes trabajar con ella a no ser que la repares. La reparación es bastante rápida (1 minuto aproximadamente) por eso pienso que el daño ocasionado debe ser ínfimo, pero fastidia mucho.
¿Alguien sabe el porque sucede esto y si puedo solventarlo de alguna forma?
Gracias anticipadas
Respuesta
1
Ok eso esta muy bien, entonces, ¿interferencia en la red?, me refiero a la instalación de la red, ¿esta normada? Supongo que si.
Lo otro puede ser programación, como haces la apertura de la base de datos, cuando terminas de usar una base la cierras, yo abro la base de datos en el modulo que ocupare, y la cierro al cerrar el modulo (formulario)
Así evito que la base de datos se mantenga abierta, solo se habré cuando la utilizare
Creo que en mi caso no es un problema con la red, todos los ordenadores están conectados con tarjetas de 100 e incluso el servidor funciona con una de 1000, y tanto el switch como las tarjetas son 3 COM. A parte tengo instalado el mismo programa para la misma empresa en dos almacenes de dos localidades diferentes, los dos con el mismo tipo de red, pero uno con más usuarios que el otro, y en el que hay más usuarios peta, y en el otro no ha petado nunca.
Gracias
Te comentare que a mi me sucedía eso tiempo atrás, era frecuente, y moletaba mucho, por que yo tengo más o menos 10 usuarios y en una red wan, en diferentes localidades, y no podía tener el sistema malo por daño de bases de datos, lo que hice fue normalizar la red, tener tarjetas de red y switch todos de la misma marca ( yo preferí DLINK) si puedes poner una mejor, excelente, ademas de tener una red 10/100 mejoro bastante, yo trabajo con varias bases de datos (unas 17 aproximadamente) y la principal pesa actualmente 700 megas, que no es menor, trata de mejorar tu red y veras los cambios.
Hola,
La red está certificada, no creo que por ahí saque nada.
En referencia al tema de abrir la base de datos, la abro al iniciar el programa y la cierro al salir, pero la mantengo abierta toda la ejecución, porque estoy accediendo continuamente y no sería eficiente establecer nueva conexión cada 30 segundos. Como ya llevo tanto tiempo con el problema, he revisado el código varias veces y me he asegurado que se cierran todos los recordsets, que en 99,99 % de los casos son de lectura, porque las inserciones, modificaciones y anulaciones, las hago con instrucciones SQL al con.Execute
He pensado transformar la base de datos de Access 2000 a Access XP o 2003 para ver si gano algo, aunque no creo.
Otra cosa que me "preocupa" es que la aplicación que utiliza la BD es muy grande y consta de varios módulos EXE, y cada uno de ellos crea una conexión con la BD, es decir, en un mismo ordenador puede haber varios programas (normalmente 2 o 3) que se conecten a la misma BD. ¿Crees qué esto puede influir? ¿Sabes si estas múltiples conexiones a la BD desde un mismo equipo/usuario, en realidad llegan a la BD como una única, o bien cada conexión es independiente aunque venga de un mismo equipo/usuario?
Gracias por tu interés. Saludos
Por fin parece ser que se ha corregido el problema, pero no tenia que ver con nada de la red. Los ordenadores tenían instalaciones de Windows 2000 y XP, pues actualizándolos con los SP correspondientes (el 4 para 2000, y el 2 para XP) parece que ahora el sistema funciona sin problemas, en todo caso muy pocos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas