0

My two databases(.mdb) are placed at a network shared folder.

Now at the same time few users are connected to database from the network place and doing their job.

In the middle get the error like :

error 1 : "The database has been placed in a state by a user "Admin" on machine "machine no." that prevents it from being opened or locked." 

error 2: “Cannot Open Database”. It may not be a database that your application recognizes, or that file may be corrupt.

can anyone please suggest me how i can open this database in programatically, so that different users can run their own application simultaneously without any error.

1
  • Is stop using access a solution you're open to?
    – Zane
    Jun 19, 2014 at 19:58

2 Answers 2

2

Since you mention that several users are working fine for a while, you have the database configured for multi-user Shared access.

However, apparently someone on "machine no." is able to acquire Exclusive control of the database. The errors you are getting are the fallout from the Open Exclusive and likely does not indicate any corruption.

This suggests that you also need to configure the security for the database to deny your users the Open Exclusive permission.

There once was help on this at this at a now defunct link. For what it is worth, you can examine: http://traycare.com/Help/NtwrkOps.htm and see if it helps you.

EDIT: Note that changes to the database structure (Forms, Views, Tables, etc) require Open Exclusive and should be scheduled for a maintenance window so as to avoid unnecessarily interfering with users of the database.

5
  • Exclusive control of the database also comes from making changes to things like Forms, Views, Tables, etc.
    – Hannah Vernon
    Jun 19, 2014 at 17:56
  • True, but I understood that the user still needs to have the Open Exclusive permission in order to change Forms, Views, etc. Has that changed?
    – RLF
    Jun 19, 2014 at 18:15
  • No, removing that permission will resolve the issue. I just wanted to point out the poor choice of storing the mdb on the network if multiple people are attempting to make design changes.
    – Hannah Vernon
    Jun 20, 2014 at 13:56
  • 1
    Thanks, I made an edit to encourage caution in making changes.
    – RLF
    Jun 20, 2014 at 14:12
  • The link is dead, it seems.
    – fbueckert
    Dec 22, 2016 at 21:55
0

Access is not very good as a multiuser database. You might want to move the tables into a mySQL database, for example and then link the tables to the database using ODBC. SQL Server or Oracle would work as well. It allows you to use the forms, reports, etc without having the data in Access.

Not the answer you're looking for? Browse other questions tagged or ask your own question.