I have a windows application on VB.Net and I connect it to a MS Access database placed on a server. This application is multiuser (50 users aprox reading and writing data), all of them can access the application at the same time with no problem.

This application works Fine but my problem is that the Database gets locked by an user (not the same all the time) at some point. The application can work for several days with no problem, then some day it shows to the user the error that it can not write data to the database.

When this happens I try to open the MSAccess database directly and it tells me that I can only open it as read-only.

To fix this problem I have to close the user's connections to the database (ldb file) on the server, then everything goes normal again.

Can anyone help me with this error? Does anyone has experienced this problem before?

Thank you for your time.

Doesn't Access have some sort of limit on concurrent usage or something? It seems like I remember it not liking to be used in a true "multi user client-server" setup. Do you know if when it gets locked, if both users were trying to access the same table at the same time or something? Are there any options from within Access regarding locks and concurrent usage? Or could you implement via the VB app software locks that would avoid accessing the same data at the same time?

Just some thoughts...good luck!

Maybe is something about Concurrency, I already placed some logic to handle this situations, I have to check if something is missing. But the weird thing is when the database gets lock, just one user has it and no one else can write on it (Like open exclusively). I'm not able to see if two users tried to write the same table and the same record at the same time.

Thank you for your suggestions :)

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.