W
wrldruler
I've got a DB with about 200 records and sometimes 5 consecutive
users. I have started getting daily "database needs to be repaired"
errors. After an abundant amount of reading on this forum and others,
I have concluded it is likely a flaky network that is causing the
issue.
One of my users was inside a query. She got a "Unrecognized database
format" error. This must have thrown the "corruption flag" because I
then could not get into the DB due to the "database needs to be
repaired" error. A few minutes later she reported "Looks like the DB
is OK now" and she continued doing updates. But I still got the "needs
to be repaired" error when I tried to open the database.
Of course, I cannot repair the database because there are still users
inside of it, still making updates successfully. And I don't feel like
looking up all of their workstation IDs and calling them. Especially
seeing they may be at a meeting and just left the DB open. It
frustrates me that Microsoft would detect a corruption, lock incoming
users out, but allow the users already in the database to continue
like nothing is wrong, thus locking the DB and preventing a repair to
be done.
So I have added 2 functions -- one that detects idle time and closes,
and the other is a "Kill" button that flips a field in a table, and
the timer on a hidden form checks for this kill demand and shuts the
DB down.
The problem is that when the DB needs to be repaired, I cannot get
into the database to flip the Kill switch. The kill command has to be
delivered by whatever lucky user(s) are in the DB at the time of the
corruption.
What I would like to do is find a way for the DB to detect the
corruption flag has been thrown, and then automatically throw the kill
command, everybody is booted out, and I or the first person back in
can easily run the repair. So does anybody know how an already opended
DB can detect the corruption flag has been thrown?
Or, does anybody know how I can get into a DB that is in need of
repair and throw the Kill switch? i tried using Linked Tables, but all
I get is a DB unrecognized error.
Thanks,
Chris
users. I have started getting daily "database needs to be repaired"
errors. After an abundant amount of reading on this forum and others,
I have concluded it is likely a flaky network that is causing the
issue.
One of my users was inside a query. She got a "Unrecognized database
format" error. This must have thrown the "corruption flag" because I
then could not get into the DB due to the "database needs to be
repaired" error. A few minutes later she reported "Looks like the DB
is OK now" and she continued doing updates. But I still got the "needs
to be repaired" error when I tried to open the database.
Of course, I cannot repair the database because there are still users
inside of it, still making updates successfully. And I don't feel like
looking up all of their workstation IDs and calling them. Especially
seeing they may be at a meeting and just left the DB open. It
frustrates me that Microsoft would detect a corruption, lock incoming
users out, but allow the users already in the database to continue
like nothing is wrong, thus locking the DB and preventing a repair to
be done.
So I have added 2 functions -- one that detects idle time and closes,
and the other is a "Kill" button that flips a field in a table, and
the timer on a hidden form checks for this kill demand and shuts the
DB down.
The problem is that when the DB needs to be repaired, I cannot get
into the database to flip the Kill switch. The kill command has to be
delivered by whatever lucky user(s) are in the DB at the time of the
corruption.
What I would like to do is find a way for the DB to detect the
corruption flag has been thrown, and then automatically throw the kill
command, everybody is booted out, and I or the first person back in
can easily run the repair. So does anybody know how an already opended
DB can detect the corruption flag has been thrown?
Or, does anybody know how I can get into a DB that is in need of
repair and throw the Kill switch? i tried using Linked Tables, but all
I get is a DB unrecognized error.
Thanks,
Chris