We have a couple Access 2000 database's that are updated from Oracle data each night. There is a routine that opens Access, updates, then closes. However, on numerous occations, when it closes, the ldb file is still there. I can not delete the file without rebooting the server which I do not want to do every day.
Also, I noticed that the ldb file date is changed when I exit Access not when the db is opened. I thought the opposite was suppose to happen.
The date changes when you exit because Access is supposed to remove the user who just exited from the file.
The LDB file, btw, is nothing more than a text file containing the Access USer (defaults to Admin unless you setup and use the Access users) and the name of the computer which that user opened the file from.
Although Access is supposed to erase the LDB whgen the last user coses the MDB, it often doesn't. You should be able to erase it, however. If it is read-only, then somebody is still in it. Although, if you're on a network, quirks can easily happen. In a past life, we had a Novell network and often had file-locking issues. Sometimes, we could identify the process holding the file open, other times we just ignored it.
Open the LDB in Notepad and that might give you a clue.
Is it simply annoying that it doesn't go away, or is there a reason you need it to be gone?
I did take a look at it in Notepad and it says I'm the one in it, yet I truly have exited. Without going to the other office and rebooting the server, I could not delete the ldb file. if this was a once in a while thing, no biggie but it's been happening every night.
We have numerous databases that track parcel info. Data is imported from numerous sources including other cities and the county, each with different formats and resides on our webmap server. I don't want anyone to directly hit that data (just in case there's a problem, nobody can say we are corrupting it). There then is some executable code (black box type thing) that kicks off to import all outside data. I then copy the data down to a local server where I set a few indexes. The routine is set by auto-opening a form that runs the macro to import all data from various sources and set the indexex. Like I said "complicated" and if I was a programmer I'm sure I could make it more efficient but it works.
The problem is if the original DB is locked, the executable bombs.
Sounds like a network problem. the LDB file is simply a text file and does not have the capability to lock the MDB file.
When the last user exits an MDB, Access is supposed to delete the LDB, but often, especially in a network environment, it does not. A residual LDB file will not cause an MDB to be locked, however - file locking is an operating system and network function.
If the file is locked, or held open, it's besause the environment thinks there is still an active process holding the file locked or open.
networking is not my forte, I can only speak from experience, and I have had issues on a Novell server where a workstation would crash while an MDB is open and Novell would hold the file locked, even though the process was gone. Novell would tell us the ID of the now phantom process and the IT folks would take it from there.