A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Access » General Discussion
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

Sudden database corruption of multiple databases.



 
 
Thread Tools Display Modes
  #1  
Old December 14th, 2004, 01:07 AM
Karen
external usenet poster
 
Posts: n/a
Default Sudden database corruption of multiple databases.

Help!!

In the last week I've had three totally seperate databases crash. I cannot
repair any of them, even using all suggestions I've seen in the archives.
Two of them are greatly reduced in size thus seem to be missing most of their
data. The common message that appears when you try to open them is:

"The database is in an unexpected state; Access can't open it. The database
is converted from a prior version by using the DAO compact database method
instead of the Convert Database command. This has left the database in a
partially converted state. ...."

These databases are in a shared directory on my computer and accessed by
other people. Two of the crashes happened when another person was closing
the databases after working in them and was thus compacting the databases.
The people received the error message that they did not have the right to
write to my drive (they do). The third just started giving the message upon
opening without any error messages. I've also noticed that "db1.mdb"s have
been created on some of my simplier databases and get the same error messages
if I try to open them. (however the actual databases work fine).

My questions:
Does anybody have an idea why this is happening, especially why would
suddenly start happening to multilple databases? I've read Tony Toews
corrupt mdb's FAQ but still am not sure what would suddenly be causing
problems in databases that have existed without problems since 2000.

The databases are pretty much a number tables and querries although each of
the crashed versions have either a form or report also. Would the lack of a
FE make a difference in such simple databases?

What can I do for prevention to keep my backups and other databases from
having similiar problems?

Is there any chance of recovering data when the database size is about 1/10
the size it should be? I've already tried a database recovery service and it
indicated it could recover unneeded tables.

Thank you with desperation,
  #2  
Old December 14th, 2004, 08:17 AM
Nikos Yannacopoulos
external usenet poster
 
Posts: n/a
Default

Karen,

When a database is meant to be a multi-user one, the split to a FE/BE
scheme, with each user having their own (usually local) copy of the FE,
is an absolute must, regardless of the size or complexity of it. The
penalty for not splitting is what you are experiencing now: corruption.
The sad part is, like you also know the hard way now, it may not happen
for a long time, and then hit you out of the blue when you're convinced
there is no reason why it should.

If it helps understand what's happened: whenever Access is asked to
compact an open database, it first closes it, then compacts into a new
one named dbX.mdb (x = 1, 2, 3...) and when the compaction finishes
successfully it deletes the original.mdb and renames dbAX.mdb to
original.mdb, and finally re-opens original.mdb. The only difference
when you compact on close is original.mdb is not re-opened.
Now, if the process fails during the compaction phase, you may have a
useless dbX.mdb while your original.mdb is still intact (though not
compacted). If compaction finishes successfully but the deletion of
original.mbd or renaming of dbX.mdb fails, you will get an error
message, and have a compacted dbX.mdb and, possibly, an uncompacted
original.mdb.

Bottomline, SPLIT BY ALL MEANS and put the back end in a folder that is
backed up regularly. Following the split you won't be able to compact
the back end by compact on close, so you'll either have to do it
manually once in a while, or set up a scheduled job to do it, say, every
night. It's an extra step, but essential in avoiding corruptions.

HTH,
Nikos

Karen wrote:
Help!!

In the last week I've had three totally seperate databases crash. I cannot
repair any of them, even using all suggestions I've seen in the archives.
Two of them are greatly reduced in size thus seem to be missing most of their
data. The common message that appears when you try to open them is:

"The database is in an unexpected state; Access can't open it. The database
is converted from a prior version by using the DAO compact database method
instead of the Convert Database command. This has left the database in a
partially converted state. ...."

These databases are in a shared directory on my computer and accessed by
other people. Two of the crashes happened when another person was closing
the databases after working in them and was thus compacting the databases.
The people received the error message that they did not have the right to
write to my drive (they do). The third just started giving the message upon
opening without any error messages. I've also noticed that "db1.mdb"s have
been created on some of my simplier databases and get the same error messages
if I try to open them. (however the actual databases work fine).

My questions:
Does anybody have an idea why this is happening, especially why would
suddenly start happening to multilple databases? I've read Tony Toews
corrupt mdb's FAQ but still am not sure what would suddenly be causing
problems in databases that have existed without problems since 2000.

The databases are pretty much a number tables and querries although each of
the crashed versions have either a form or report also. Would the lack of a
FE make a difference in such simple databases?

What can I do for prevention to keep my backups and other databases from
having similiar problems?

Is there any chance of recovering data when the database size is about 1/10
the size it should be? I've already tried a database recovery service and it
indicated it could recover unneeded tables.

Thank you with desperation,

  #3  
Old December 14th, 2004, 09:23 PM
Karen
external usenet poster
 
Posts: n/a
Default

Thanks Nikos,

I'm still wondering how three unrelated databases would go down within a few
days, the FE/BE seems to be an issue which might of prevented it from
happening but not the cause. any thoughts?

Some of my multi-user databases have nothing but tables in them. Would a FE
still help prevent corruption?

Some of my users are the people building queries, forms and reports (Usually
different people working at different times). How do you deal with FE's,
when the very process the people need access to the database is for design
purposes? How can I keep everyone's FE's updated without a great amount of
time.

Thank you

Karen

"Nikos Yannacopoulos" wrote:

Karen,

When a database is meant to be a multi-user one, the split to a FE/BE
scheme, with each user having their own (usually local) copy of the FE,
is an absolute must, regardless of the size or complexity of it. The
penalty for not splitting is what you are experiencing now: corruption.
The sad part is, like you also know the hard way now, it may not happen
for a long time, and then hit you out of the blue when you're convinced
there is no reason why it should.

If it helps understand what's happened: whenever Access is asked to
compact an open database, it first closes it, then compacts into a new
one named dbX.mdb (x = 1, 2, 3...) and when the compaction finishes
successfully it deletes the original.mdb and renames dbAX.mdb to
original.mdb, and finally re-opens original.mdb. The only difference
when you compact on close is original.mdb is not re-opened.
Now, if the process fails during the compaction phase, you may have a
useless dbX.mdb while your original.mdb is still intact (though not
compacted). If compaction finishes successfully but the deletion of
original.mbd or renaming of dbX.mdb fails, you will get an error
message, and have a compacted dbX.mdb and, possibly, an uncompacted
original.mdb.

Bottomline, SPLIT BY ALL MEANS and put the back end in a folder that is
backed up regularly. Following the split you won't be able to compact
the back end by compact on close, so you'll either have to do it
manually once in a while, or set up a scheduled job to do it, say, every
night. It's an extra step, but essential in avoiding corruptions.

HTH,
Nikos

Karen wrote:
Help!!

In the last week I've had three totally seperate databases crash. I cannot
repair any of them, even using all suggestions I've seen in the archives.
Two of them are greatly reduced in size thus seem to be missing most of their
data. The common message that appears when you try to open them is:

"The database is in an unexpected state; Access can't open it. The database
is converted from a prior version by using the DAO compact database method
instead of the Convert Database command. This has left the database in a
partially converted state. ...."

These databases are in a shared directory on my computer and accessed by
other people. Two of the crashes happened when another person was closing
the databases after working in them and was thus compacting the databases.
The people received the error message that they did not have the right to
write to my drive (they do). The third just started giving the message upon
opening without any error messages. I've also noticed that "db1.mdb"s have
been created on some of my simplier databases and get the same error messages
if I try to open them. (however the actual databases work fine).

My questions:
Does anybody have an idea why this is happening, especially why would
suddenly start happening to multilple databases? I've read Tony Toews
corrupt mdb's FAQ but still am not sure what would suddenly be causing
problems in databases that have existed without problems since 2000.

The databases are pretty much a number tables and querries although each of
the crashed versions have either a form or report also. Would the lack of a
FE make a difference in such simple databases?

What can I do for prevention to keep my backups and other databases from
having similiar problems?

Is there any chance of recovering data when the database size is about 1/10
the size it should be? I've already tried a database recovery service and it
indicated it could recover unneeded tables.

Thank you with desperation,


  #4  
Old December 15th, 2004, 01:39 AM
John Vinson
external usenet poster
 
Posts: n/a
Default

On Tue, 14 Dec 2004 13:23:02 -0800, "Karen"
wrote:

I'm still wondering how three unrelated databases would go down within a few
days, the FE/BE seems to be an issue which might of prevented it from
happening but not the cause. any thoughts?


Check your network. Somebody may have a bad NIC (Network Interface
Connector); Access is exquisitely sensitive to network noise. The NIC
might have gone bad and the user whose machine it's in touched the
victim databases over the next few days.

Or, you might have a rogue user who does not realize that ctrl-alt-del
and Stop Process on a slow-running query is about equivalent to
turning off the prop on an airplane flying at 500 feet in bad weather.


John W. Vinson[MVP]
Join the online Access Chats
Tuesday 11am EDT - Thursday 3:30pm EDT
http://community.compuserve.com/msdevapps
  #5  
Old December 15th, 2004, 07:35 AM
Nikos Yannacopoulos
external usenet poster
 
Posts: n/a
Default

Karen,

See my answers following your specific questions.

Regards,
Nikos

Karen wrote:
Thanks Nikos,

I'm still wondering how three unrelated databases would go down within a few
days, the FE/BE seems to be an issue which might of prevented it from
happening but not the cause. any thoughts?

See John Vinson's reply on this; the network connection problem would
definitely explain the timing.

Some of my multi-user databases have nothing but tables in them. Would a FE
still help prevent corruption?

I've never had a similar case, but if I were to put my money on an
answer, that would be that as long as several users are opening the same
database directly you're in for corruption, regardless of whether it's
just tables or other objects as well.

Some of my users are the people building queries, forms and reports (Usually
different people working at different times). How do you deal with FE's,
when the very process the people need access to the database is for design
purposes? How can I keep everyone's FE's updated without a great amount of
time.

To begin with, you should check out Tony Toews's Auto FE utility, which
distributes updated FE's to users automatically:

http://www.granite.ab.ca/access/autofe.htm

Now, to your multiple developers: again, I've never had a similar
situation, but amalgamating my experience with ERP's I would suggest a
scheme which involves:
* a test FE for each developer
* a master test FE
* a master production FE
* an administrator (yourself?)
The idea is that each developer adds objects in their test FE, when done
they notify the administrator who imports the new objects in the master
test FE where he/she (and, possibly, other developers) can test them to
make sure they work as expected and do not create conflicts with other
objects, and once the test results are satisfactory, the new object are
imported into the master production FE to be distributed to all users.
Before embarking on a new development, a developer should take a copy of
the master production FE to use as his/her test FE for the new development.
I realize this may look complicated at first, but it's not too hard to
implement and it pays off.

Thank you

Karen

"Nikos Yannacopoulos" wrote:


Karen,

When a database is meant to be a multi-user one, the split to a FE/BE
scheme, with each user having their own (usually local) copy of the FE,
is an absolute must, regardless of the size or complexity of it. The
penalty for not splitting is what you are experiencing now: corruption.
The sad part is, like you also know the hard way now, it may not happen
for a long time, and then hit you out of the blue when you're convinced
there is no reason why it should.

If it helps understand what's happened: whenever Access is asked to
compact an open database, it first closes it, then compacts into a new
one named dbX.mdb (x = 1, 2, 3...) and when the compaction finishes
successfully it deletes the original.mdb and renames dbAX.mdb to
original.mdb, and finally re-opens original.mdb. The only difference
when you compact on close is original.mdb is not re-opened.
Now, if the process fails during the compaction phase, you may have a
useless dbX.mdb while your original.mdb is still intact (though not
compacted). If compaction finishes successfully but the deletion of
original.mbd or renaming of dbX.mdb fails, you will get an error
message, and have a compacted dbX.mdb and, possibly, an uncompacted
original.mdb.

Bottomline, SPLIT BY ALL MEANS and put the back end in a folder that is
backed up regularly. Following the split you won't be able to compact
the back end by compact on close, so you'll either have to do it
manually once in a while, or set up a scheduled job to do it, say, every
night. It's an extra step, but essential in avoiding corruptions.

HTH,
Nikos

Karen wrote:

Help!!

In the last week I've had three totally seperate databases crash. I cannot
repair any of them, even using all suggestions I've seen in the archives.
Two of them are greatly reduced in size thus seem to be missing most of their
data. The common message that appears when you try to open them is:

"The database is in an unexpected state; Access can't open it. The database
is converted from a prior version by using the DAO compact database method
instead of the Convert Database command. This has left the database in a
partially converted state. ...."

These databases are in a shared directory on my computer and accessed by
other people. Two of the crashes happened when another person was closing
the databases after working in them and was thus compacting the databases.
The people received the error message that they did not have the right to
write to my drive (they do). The third just started giving the message upon
opening without any error messages. I've also noticed that "db1.mdb"s have
been created on some of my simplier databases and get the same error messages
if I try to open them. (however the actual databases work fine).

My questions:
Does anybody have an idea why this is happening, especially why would
suddenly start happening to multilple databases? I've read Tony Toews
corrupt mdb's FAQ but still am not sure what would suddenly be causing
problems in databases that have existed without problems since 2000.

The databases are pretty much a number tables and querries although each of
the crashed versions have either a form or report also. Would the lack of a
FE make a difference in such simple databases?

What can I do for prevention to keep my backups and other databases from
having similiar problems?

Is there any chance of recovering data when the database size is about 1/10
the size it should be? I've already tried a database recovery service and it
indicated it could recover unneeded tables.

Thank you with desperation,


 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Archiving A Database PC User General Discussion 2 November 2nd, 2004 11:16 PM
Create secıred database via code ADOX? Özden Irmak General Discussion 15 September 16th, 2004 03:26 AM
multiple databases? sallyt Mailmerge 5 June 8th, 2004 06:13 AM
Please Help, The database is in an unexpected state; Microsoft Access can't open it. Gary A. Hollenbeck New Users 2 May 20th, 2004 05:42 PM
How to extract data from multiple Access databases to create a Pivot table Android Worksheet Functions 4 February 6th, 2004 03:22 PM


All times are GMT +1. The time now is 07:40 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.