-
2
- #1
I just wanted to post the resolution to a problem that brought our office to its knees this past week. We have a multiuser Access 2K database being accessed by about 12 clients with W2K and have been getting the following error about every 10 minutes after repairing:
The database...needs to be repaired or isn't a
database file. You or another user may have unexpectedly
quit MSA while a database was open. Do you want MSA to
attempt to repair the database?
Below are mostly things that we learned from our own research, and then Microsoft (aargh!) repeated to us once we broke down on day 4 of the office being dead in the water. Much of this is included in the KB article 300216, and should be gone over VERY carefully. We had done everything but number 9 which wasn't in the KB article, and that proved to be the difference.
1. Try importing all objects into a new database, then compact and repair.
2. Make sure ALL recordsets and DB connections are being closed in your code.
3. Run JetComp.exe against the .MDB file.
4. Update all client machines and the server where the database resides with the latest operating system service pack. (W2K SP3)
5. Update all network cards on client machines and the server with the latest driver which can be found on the manufacturer's website. (Not fun)
6. Remove any unneccesary network protocols from all client machines and server. TCP/IP is the preferred protocol. (Removed NetBUI)
7. Update Office/Access to the latest service release on all client machines (Office SP3)
8. Update the Jet Database Engine to its latest service pack on all client machines. (Jet 4.0 SP6)
9. If you are running Access 2000, update Microsoft Data Access Components (MDAC) on all client machines. (MDAC 2.7)
10. Disable opportunistic locking by changing adding the registry keys on both the client AND server machines.
11. Try splitting the database into a front end and a back end database to limit network traffic to just the tables.
There are certainly more things that could go wrong and more things to check that we didn't run across in this ordeal, but I wanted to specifically point out MDAC, as we did not hear or read about this from anywhere until we called Microsoft. Hopefully this may save one of you a few days of tearing your hair out and the $90/hr that Microsoft hits you with. Good luck.
Todd
The database...needs to be repaired or isn't a
database file. You or another user may have unexpectedly
quit MSA while a database was open. Do you want MSA to
attempt to repair the database?
Below are mostly things that we learned from our own research, and then Microsoft (aargh!) repeated to us once we broke down on day 4 of the office being dead in the water. Much of this is included in the KB article 300216, and should be gone over VERY carefully. We had done everything but number 9 which wasn't in the KB article, and that proved to be the difference.
1. Try importing all objects into a new database, then compact and repair.
2. Make sure ALL recordsets and DB connections are being closed in your code.
3. Run JetComp.exe against the .MDB file.
4. Update all client machines and the server where the database resides with the latest operating system service pack. (W2K SP3)
5. Update all network cards on client machines and the server with the latest driver which can be found on the manufacturer's website. (Not fun)
6. Remove any unneccesary network protocols from all client machines and server. TCP/IP is the preferred protocol. (Removed NetBUI)
7. Update Office/Access to the latest service release on all client machines (Office SP3)
8. Update the Jet Database Engine to its latest service pack on all client machines. (Jet 4.0 SP6)
9. If you are running Access 2000, update Microsoft Data Access Components (MDAC) on all client machines. (MDAC 2.7)
10. Disable opportunistic locking by changing adding the registry keys on both the client AND server machines.
11. Try splitting the database into a front end and a back end database to limit network traffic to just the tables.
There are certainly more things that could go wrong and more things to check that we didn't run across in this ordeal, but I wanted to specifically point out MDAC, as we did not hear or read about this from anywhere until we called Microsoft. Hopefully this may save one of you a few days of tearing your hair out and the $90/hr that Microsoft hits you with. Good luck.
Todd