Access DB crash on form

M

MikeB

I must have been prescient when I asked about decompiling last week. I
started working on some of my forms last night and Access would crash
consistently every time I tried opening a form.

Is there a chance that my data may be corrupt? There was some message
that Access had to shut down to do a repair and that it would back up
the database. After that, on another crash, something broke and every
time I tried opening the front-end, a pop-up appeared indicating that
another user had the file open. Trying to Repair the file made no
difference, so I reverted back tho the backup that Access made before
it attempted the repair.

So I bit the bullet and did the following steps. Did I do everything
that was required or are there more steps I need to take to clean out
the database properly?

I'm using Access 2000 (Access XP?) and I have a front-end and back-
end .mdb file.

I renamed the old files and then created new files.

In the new back-end I imported all the tables from the old back-end.
(I also exported the only module that was in there to a flat file). I
chose the option to preserve the relationships when I imported the
data. Afterwards I had to edit the Relations to make them look neat
again.

In the new Front-end I linked the tables from the new back end.

Then I imported the queries from the old front-end.

I'll redesign the forms by hand, so much has changed that little of
the forms remain usable. I'll also export the modules to flat files
and only re-import the needed modules (not all the tests I wrote).

Did I miss anything?

Thanks
 
J

John W. Vinson

I must have been prescient when I asked about decompiling last week. I
started working on some of my forms last night and Access would crash
consistently every time I tried opening a form.

Is there a chance that my data may be corrupt?

It's possible but more likely that your Form is corrupt (perhaps in its VBA
code module).
There was some message
that Access had to shut down to do a repair and that it would back up
the database. After that, on another crash, something broke and every
time I tried opening the front-end, a pop-up appeared indicating that
another user had the file open. Trying to Repair the file made no
difference, so I reverted back tho the backup that Access made before
it attempted the repair.

Once there's some corruption, it can show up all over the application,
sometimes in perplexing ways.
So I bit the bullet and did the following steps. Did I do everything
that was required or are there more steps I need to take to clean out
the database properly?

I'm using Access 2000 (Access XP?) and I have a front-end and back-
end .mdb file.

I renamed the old files and then created new files.

In the new back-end I imported all the tables from the old back-end.
(I also exported the only module that was in there to a flat file). I
chose the option to preserve the relationships when I imported the
data. Afterwards I had to edit the Relations to make them look neat
again.

good... perhaps unnecessary since there's no indication that the *backend* was
corrupt (was there?)
In the new Front-end I linked the tables from the new back end.

Then I imported the queries from the old front-end.

I'll redesign the forms by hand, so much has changed that little of
the forms remain usable. I'll also export the modules to flat files
and only re-import the needed modules (not all the tests I wrote).

Did I miss anything?

Not that I can see; you might try importing forms, one at a time, compiling
the code and then compacting after each. No real need to start totally from
scratch unless there is some other reason to do so.
 
T

Tony Toews [MVP]

John W. Vinson said:
Not that I can see; you might try importing forms, one at a time, compiling
the code and then compacting after each. No real need to start totally from
scratch unless there is some other reason to do so.

Compacting after each import would be rather time consuming.
Whenever I've had form corruption, which isn't that often, usually
either decompiling or importing all objects into a new MDB fixed it.
In those rare cases where that didn't work, which hasn't happened for
a few years now, Access would crash when it hit the corrupt form.
I'd then continue the import at the next object past the corrupt form
and keep on going. Then I'm import the corrupt form from my backup
MDB usually only an hour or two old. I'd lose some work but could
usually recreate it fairly rapidly.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
 
T

Tony Toews [MVP]

MikeB said:
I'm using Access 2000 (Access XP?) and I have a front-end and back-
end .mdb file.

So you have the latest SPs for your version of Access/Office
installed? Typically SP3.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
 
D

David W. Fenton

m:
I'm using Access 2000 (Access XP?)

No, Access 2002 is the one that shipped with Office XP. There is no
such thing as Access XP, only Access 2002.

It really does make a difference, as the service packs are
completely different for different versions of Access. Access 2000
was particularly problematic and should not be run without Jet 4 SP6
or higher and SR1 of the Access installation or higher.

I've barely used Access 2002, so don't know what the service pack
situation for that is. Indeed, I rather consider Access 2003 to be
the ultimate service pack for A2K2.
 
D

David W. Fenton

1) That's not been my experience

2) How?

I've had it happen, importing into a new database to try to recover
a corrupted class module. If I didn't compact in some cases it would
have the same problems in the new database.

Before the import, I'd also recommend a full
compact/decompile/compact cycle of the database you're importing
(with no recompile of the source database before the import). That
way you've done the best you can to clean out anything corrupt from
the source.

Failing that, use SaveAsText.
 

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