Err: Table 'MSysAccessObjects" Already exists'

  • Thread starter Thread starter Ernesto
  • Start date Start date
E

Ernesto

on an access/vba app, I've suddenly started getting the error:
Table 'MSysAccessObjects" Already exists'

whenever I try to do a compact and repair, and that function is not
completed (the mdb size remains the same).



One hint, this file has been opened and the vba edited in axs2003.

Any help as to what is wrong will be appreciated.



Thanks
 
Hi Ernesto,


SYMPTOMS
When you try to compact and repair a database by using the Compact and
Repair Database utility, you may receive the following error message:

Table 'TempMSysAccessObjects' already exists
WORKAROUND
To work around this problem, you can use one of the following methods:


Method 1
Remove System Table TempMSysAccessObjects

Note Use this method when the problem is with Database_1 database.
Run Access.
Open Database_1 database.
On the Tools menu, click Options.
On the View tab, select the System objects check box and then click OK.
In the Database window, click Tables in the left pane.
In the right pane, select and then delete TempMSysAccessObjects table.
Method 2
Import the Database to a New Database
Run Access.
Create a new database. Name the new database Database_2.
Make sure that the view for System objects is not selected. To do this,
follow these steps:
In the Database window on the Tools menu, click Options.
On the View tab in the Options dialog box, clear System objects and then
click OK.
On the File menu, point to Get External Data and then click Import.
In the Import dialog box, select Database_1 database and then click Import.
In the Import Objects dialog box, click Options.
In the Import Objects dialog box, click Select All.
Under the Import section, select both the Menus and Toolbars check box and
the Import/Export Specs check box.
In the Import Objects dialog box, select each tab and then repeat step 7
for each of the tabs.
In the Import Objects dialog box, click OK.
In the Database window on the Tools menu, click Database Utilities and then
click Compact and Repair Database.

Note Make sure that all objects from Database_1 database are imported to
Database_2 database.
Quit Access.
Rename Database_1 database to Database_1_Backup.
Rename Database_2 to Database_1.

Please let me know has this helped You...
Thank you...
Raghu...
This posting is provided "AS IS" with no warranties, and confers no rights.
 
Thanks Raghu,
First,
by DATABASE_1 I assumed you mean my mdb.
But if so, there is NO "TempMSysAccessObjects"
I only found "MSysAccessObjects".

Anyway, I tried the first method, and I get the error:
The database engine could not lock table MSysAccessObjects because it is
already in use by another person or process.

Since I don;t know if I have the right table, or even the mdb, I did not try
the second method and will wait for your answer.

thanks again.
 
Hi Ernesto,

I would recommend you to use the second Method and see if that work. I am
sure why you get the Error. The formost that i woudl requestyou to do is to
back up your database.
also i ahve additional Information on how to troubleshoot and to repair a
damaged Access 2002 or later database
Microsoft Knowledge Base Article - 283849

Please let me know how this goes...
Thank You...
Raghu...
This posting is provided "AS IS" with no warranties, and confers no rights.
 

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

Back
Top