Base de datos para varios clientes

Me pregunto qué cosas debo tener en cuenta para que una Base de datos en Access una vez ubicada en el servidor de la empresa y varios clientes accedan a ella puedan hacer uso sin que Access les diga que la aplicación está abierta por otra persona y solo la puede usar en modo lectura.

2 respuestas

Respuesta
1

Este es un problema de concurrencia cuando se trabaja con Access u otras bases de datos como back end, el problema se causa porque utiliza formularios vinculados y cuando 2 usuarios abren el mismo formulario Access informa que otro usuario ha modificado el registro o que ya tiene abierta la base de datos, como solución puede trabajar con formularios independientes. Ahora, si quiere mejorar el control de los datos, más seguridad y no tener problemas por concurrencia le recomiendo utilizar otro servidor para la base de datos, personalmente utilizo PostgreSQL, ya que es gratis y muy potente.

Respuesta
1

Para que pueda ser utilizada en modo compartido, solo se precisa que las tablas se compartan sin exclusividad.

Para evitar conflictos, todos los usuarios deben de abrirla en modo lectura y para actualizar o crear nuevos registros (lo que requiere exclusividad) hacerlo en modo 'ráfaga' (hacer la transición lo más breve posible).
Eso es lo que hacen las bases de datos externas, se le envían los datos a una cola y cuando pueden los actualizan, y devuelven resultados, como encolan las peticiones no hay conflictos (a lo sumo ligeros retardos) y Access en lugar de encolar las peticiones lo que hace es reiterarlas para esperar a que acabe la que está en curso.
El método de encolar peticiones es el mismo en MySQL en SQL Server ... etc. y también en la glorificada PostgreSQL, son entornos independientes que se asemejan a mini sistemas operativos con sus ventajas e inconvenientes.

EL comportamiento 'natural' de Access es trabajar en modo exclusivo con los datos, pero admite el modo compartido y provee herramientas para ello, sea para conectarse a bases externas (solo se precisa el driver adecuado) o para emular esa funcionalidad.

Por cierto, por cada base en otros entornos hay cuando menos cinco mil en Access con magníficos resultados y bastantes CRMs basados en Access (con mayor o menor disimulo para evitar las críticas de programadores de otros entornos).

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas