Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Access Database Corruption problem

Status
Not open for further replies.

Francis

Programmer
Jan 26, 1999
124
GB
Scenario:
Access database, VB front end , 2-30MB in size, up to 300 tables
Multi-user, typically 1 to 5, sometimes 10 users..
What Happens:
At one site, the one with most users, there have been occasions when one user cannot open the file, which denies it is Access. Meanwhile other users are still happily working in the file.
Occasionally, on only one site (out of 10) there is a problem and the file denies being an Access database to everyone. Most times it is possible to use repair from VB to fix it, sometimes repair is only possible in Access. Once at this site the database that was sent back for recovery had been upgraded to 2000 and users said they did not do that. They only have Access2000, not 97, the VB uses Jet 3.5
Now, for the first time, the DB is unrecoverable.
What I have tried to stop this
The program uses calls to MSLDBUSR.DLL to determine if more than one user has the app open and prevents (or at least just advises against) large-scale operations when there is more than one user. The users who have had the problem were not doing such things.)
I have now extended the use of MSLDBUSR.DLL so that when a suspect user session is found users are advised to log off and repair the model. (I have made this countable as it seems one such event may clear soon after).
I have spent the day running multiple sessions, and breaking the network or switching off one of the PC’s in the middle of major operations to try to break it.
I have not yet managed to break a file, but I have reached one repeatable situation, by pulling the plug:

MSLDBUSR.DLL reports that no users have the file open.
Attempts to repair the file report “File in Use”. This applies even when the File has no associated LDB file.
Rebooting the PC (the one with the file on it it) fixes the problem.

I have thought about the things that are different at the site that has the problems. Just in case anyone recognises something here they are:
The users are young grudautes, not in computers but in another scientific technology.
They use very long files names such as
P:\Department\ projects\project 11xyz\ Myproject11xyz(working)2002-03-03.ext

Any Suggestions?
 
Hi
I think I have had similar problems and have found that if I open task manager I find that Access is still listed in the processes, even though Access is not open. Once I end the process I am able to repair the database. I'm not sure if this is the same situation you are talking about but I thought I would throw it out there.
 
I have had similar problems caused by a faulty network patch cable on one of the users machines. It took a while to figure out. Somehow, as dryc says, the user can be disconnected yet the app still thinks it is running. makes a mess of the db.

Hope this helps...
A+, N+, MCP
 
Thanks, I will try so see if there is a dead copy of Access running and suggest it to the users.
Are there any ways to recover a database after this happens?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top