La mayoría de los usuarios de Microsoft Access, en algún momento, se encontraron con el mensaje de que su base de datos se corrompió o se colocó en un "estado inconsistente". Verá un cuadro de diálogo con el mensaje:Microsoft Access ha detectado que esta base de datos se encuentra en un estado inconsistente y el software intentará recuperar la base de datos.
Desde que comencé con Microsoft Access hace 25 años, el aspecto frustrante de este error es que no hay una razón definitiva por la cual la base de datos se corrompió. Los mensajes de error en una variedad de otros programas de software son mucho más descriptivos sobre qué hacer para evitar violar las reglas del software. En Access, por ejemplo, hay caracteres que no están permitidos al nombrar campos en una tabla. Si elige un personaje que no está alineado con las reglas, el mensaje que sigue es claro. Seleccione el botón Ayuda y luego siga las reglas que se muestran con respecto a las reglas de nombres de tablas.
Entonces, ¿qué hace uno con respecto a la corrupción de la base de datos en Access?
Primero, es importante saber que la mayoría de las bases de datos de Access se corrompen en algún momento. Descubrí que los métodos más probados para lidiar con la corrupción son no perder el tiempo tratando de determinar por qué se corrompió la base de datos, sino centrarse en los métodos que evitan que la base de datos se corrompa en primer lugar.
A continuación se enumeran algunas cosas que hacen los consultores de Arkware que han ayudado a reducir significativamente la corrupción de la base de datos:
- Divida su base de datos en front-end y back-end (dos archivos separados). Todas las tablas de la base de datos están en la base de datos de back-end y cada usuario tiene su propia copia de la base de datos de front-end en el escritorio o en el disco duro local. La base de datos front-end contiene todos los objetos de la base de datos (consultas, formularios, informes y macros/VBA). Cada PC tiene la misma estructura de carpetas, como (C:\WorkingDatabase\DatabaseName). Con el Administrador de tablas vinculadas, vincule las tablas de la base de datos de back-end a la base de datos de front-end. Access tiene un asistente de división de bases de datos que puede ayudar a dividir la base de datos original en las bases de datos front-end y back-end. Busque una futura entrada de blog sobre el uso de este asistente.
- Fuerza el cierre de la base de datos al cierre de operaciones u otros tiempos de inactividad específicos. Esto se hace porque los usuarios a veces dejan el sistema abierto y la conexión de acceso desatendida puede desconectarse de la red, lo que puede causar corrupción. El código se puede colocar en el evento "OnTimer" de cualquier formulario de base de datos que permanezca abierto. El mejor formulario de base de datos para usar es un formulario de panel de control principal. Simplemente agregue DoCmd.Quit al código VBA para cerrar el sistema a una hora determinada del día (es decir, a las 2:00 a. m.).
- Asegúrese de que todos los usuarios estén usando la misma versión de Access en todas las computadoras.
- Cree un archivo por lotes de comandos de MS-DOS que copie una nueva base de datos front-end en la unidad C:\ local de la computadora del usuario. Esto no es obligatorio, pero garantiza que todos reciban una copia limpia de la base de datos front-end local.
- No tenga tablas de otras bases de datos de Access vinculadas a su base de datos principal que utilicen diferentes versiones de Access.
- Deshabilitar la función de corrección automática de Access. Esto se puede hacer seleccionando Archivo> Opciones> Base de datos actual. En "Características de autocorrección de nombres", anule la selección de "Corrección automática de nombres de pista"
Estas son algunas de las principales medidas preventivas para protegerse contra la corrupción de la base de datos. Si tiene problemas con la corrupción de la base de datos, comuníquese con Arkware y podemos ayudarlo a lograr un entorno más estable para su base de datos de Microsoft Access.