Corrupt File, Help with Possible Solution

K

Kieron Capehorn

We have an Access file that we believe is corrupt. The Access file contains
one table with 21 records and one form that shows all the fields in the
table. We can open the file, but when we open the table, Access crashes
instantly (it says Access has to close and do we want to send an error
report, no error message more descriptive than that I'm afraid). A box then
opens asking if we want to make a backup of the database - if we try this,
Access crashes again in the same way.

If we open the form, we can view the all of the records up to the 20th
record. If we try to move on to the 21st record, Access crashes, so the 21st
record is probably corrupt.

I have found that if I go into the design of the table and delete one of the
rows, Access will not crash and I can view the table and form in full. The
row I have to delete is formatted as an OLE Object, so perhaps someone has
put bad data into this field on the 21st record.

Is there a way to fix this problem without having to delete the entire row?
I am perfectly happy to delete the 21st record, but would rather not delete
the row. Could we come up with a clever macro or module that will delete the
21st record?

Thank You.
 
J

John W. Vinson

We have an Access file that we believe is corrupt. The Access file contains
one table with 21 records and one form that shows all the fields in the
table. We can open the file, but when we open the table, Access crashes
instantly (it says Access has to close and do we want to send an error
report, no error message more descriptive than that I'm afraid). A box then
opens asking if we want to make a backup of the database - if we try this,
Access crashes again in the same way.

If we open the form, we can view the all of the records up to the 20th
record. If we try to move on to the 21st record, Access crashes, so the 21st
record is probably corrupt.

I have found that if I go into the design of the table and delete one of the
rows, Access will not crash and I can view the table and form in full. The
row I have to delete is formatted as an OLE Object, so perhaps someone has
put bad data into this field on the 21st record.

Is there a way to fix this problem without having to delete the entire row?
I am perfectly happy to delete the 21st record, but would rather not delete
the row. Could we come up with a clever macro or module that will delete the
21st record?

Thank You.

MAKE A BACKUP.... NOW!!!! You may need it.

You're making an invalid distinction between a record and a row. A record IS a
row!

If there is corruption in this table, there may be corruption elsewhere. I'd
strongly suggest creating a new .mdb file, empty, and importing everything
EXCEPT this table into it; import this table, design view only. Then use
File... Get External Data... Link from the new database to link to the damaged
table, and run an Append query to append everything except this one record.
Compact and repair the new database when you're done. Test thoroughly (step
through all the records in this table if possible).

Take a look at Tony Toews' extensive corruption resources at:

http://www.granite.ab.ca/access/corruptmdbs.htm
 
T

Tony Toews [MVP]

wangdong said:
There is a tool called Advanced Access Repair. I have used it to
repair many corrupt Access MDB files on my damaged disks successfully.
Its homepage is http://www.datanumen.com/aar/

And you are an employee of that company. In the future please
indicate any such clearly.

Tony
--
Tony Toews, Microsoft Access MVP
Tony's Main MS Access pages - http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
For a convenient utility to keep your users FEs and other files
updated see http://www.autofeupdater.com/
Granite Fleet Manager http://www.granitefleet.com/
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top