Discover why you may get the response “Microsoft Access has detected that this database is in an inconsistent state” and ways to deal with the problem.
If you’ve used MS Access regularly, you’ve probably come across the above error text. When this happens, the application may provide an option to perform a database repair and highlight items that couldn’t be recovered. We will explore this error in detail, find out what causes it and your options when it comes to fixing it.
Causes of this error
Databases based on MS Access can support multiple users thanks to the file locking system deployed by the JET database engine. This is also known as server leasing. Through this process, MS Access ensures that users do not overwrite data generated by others.
Unfortunately, server leasing comes with challenges of its own due to the complexities in locking files over networks. This causes data inconsistencies and may result in database corruption. A problematic network may compound this problem leading to complex file corruption. This may actually cause irreparable damage to the database objects resulting in data loss. Common problems affecting the proper functioning of databases may include conflicting IP addresses, inaccurate DNS configuration, and slow or unstable internet connection.
In case the JET engine realizes data inconsistency, the above error pops up. If you select “OK”, the system automatically tries to rectify the inconsistencies. Now, if it fails, it triggers error 2317, showing that it doesn’t recognize the database file.
What to do when you encounter the above error
If the application is unable to resolve the error even after conducting the auto-repair procedure, stop the leasing process on the computer hosting the database. In cases where the database file is one, make this change on the computer where you have saved the database. In a multi-user scenario, where the database is split into front-end and back-end, implement the change on the computer that houses the back-end file.
At this point, your database might be corrupt and may not work properly even after disabling the leasing problem. Therefore, if you have a backup of the MDB file, use it to replace the corrupt Access database.
However, if the file is not available or if it is corrupt, try to salvage it using the “Compact and Repair” tool in Access. This is an inbuilt utility in MS Access and will not cost you any extra money.
Unfortunately, this utility tool only works for minor damages. If your database has been damaged extensively, you need to use specialized software such as DataNumen Access Repair. This application can repair damaged MDB and ACCDB files and recover deleted objects. The advantage of utilizing this tool is that it is optimized to enable you to recover most of your data with minimal input. Once you recover your Access files, create a blank database, and move the recovered objects to the new file. This will restore your database.
Remember to inspect your network to make sure that there are no obvious problems that are affecting the performance of your database. Also, check your computer for hardware failure and software conflicts as these can corrupt your database even after fixing it.