Results 1 to 10 of 10
  1. #1
    Join Date
    Jun 2005
    Posts
    115

    Unanswered: i can t open an access database

    I am trying to open an access 2000 database with access 2003
    and i get the mesage impossible to open
    and AOIndex is not an index of that table

    how can i open it anyway ?
    thank you

  2. #2
    Join Date
    Mar 2005
    Posts
    261
    This is a sign of corruption.

    Read this guide (- the section about fixing corruption):
    Access Database Repair Guide

    It gives you all the various options you have to try and fix the database yourself. Experience suggests however that this particular error mesage is not usually repairable without sending your file to a recovery company.

    HTH

  3. #3
    Join Date
    Jun 2005
    Posts
    115
    :-(( thank you !

  4. #4
    Join Date
    Apr 2006
    Posts
    2

    Aoindex

    I had this same problem with a client's database, but found nothing that helped. So while this topic is a bit old I wanted to find a place to post my solution where people might see it when searching the Internet. The following VBScript allows the database to be opened in Access and the MSysAccessObjects table is recreated. Some how, possibly corruption, the index on this table was missing. However, once you can open it you may want to create a new database and export/import the tables in case you have other system table corruptions. Just simply copy and paste this into notepad and save the file with a .VBS extension. Make sure you change the Const strDB = "C:\path of MDB. GOOD LUCK!



    Jarrett



    ---------------------- Cut Here -------------------------



    Const strDB = "C:\MYDATABASE.MDB"



    Dim dbConnection

    Set dbConnection = CreateObject("ADODB.Connection")

    dbConnection.Open "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & strDB & ";Uid=Admin;Pwd=;"

    dbConnection.Execute "Drop Table MSysAccessObjects"

    dbConnection.Close

    Set dbConnection = nothing



    MsgBox "You should now be able to open the database!"
    Last edited by jrat; 04-21-06 at 00:40.

  5. #5
    Join Date
    Nov 2003
    Location
    Sussex, England
    Posts
    404
    thanks - I've made a copy of htat. I've had similar problems in the past, so this may be useful in future!

  6. #6
    Join Date
    Sep 2003
    Location
    MI
    Posts
    3,713
    I'm smelling a FAQ entry here ... Mark this one down Ted.
    Back to Access ... ADO is not the way to go for speed ...

  7. #7
    Join Date
    Sep 2003
    Location
    MI
    Posts
    3,713
    Quote Originally Posted by waynephillips
    This is a sign of corruption.

    Read this guide (- the section about fixing corruption):
    Access Database Repair Guide

    It gives you all the various options you have to try and fix the database yourself. Experience suggests however that this particular error mesage is not usually repairable without sending your file to a recovery company.

    HTH
    Wayne,

    The only thing I don't see in there is the ODBC repair available thru a DSN ... It too can repair things in Access DBs. It is VERY good at repairing when the db is password protected.
    Back to Access ... ADO is not the way to go for speed ...

  8. #8
    Join Date
    Mar 2005
    Posts
    261
    Quote Originally Posted by M Owen
    Wayne,

    The only thing I don't see in there is the ODBC repair available thru a DSN ... It too can repair things in Access DBs. It is VERY good at repairing when the db is password protected.
    Hi,

    The ODBC compact & repair options are actually the same as the old DAO commands RepairDatabase and CompactDatabase. But as of Jet 4, RepairDatabase no longer exists in DAO and CompactDatabase now does the work of both. For some reason, in ODBC proeprties they remain seperated, and still work.

    The reason they will sometimes work better than the Access built-in Compact & Repair options is because they only try to repair the JET tables/queries - they leave the Access specific objects alone. I have seen numerous examples of when the Access-repair functions make the corruption worse because it tries to defragment the Access objects, but instead just makes a mess.

    You're right... the ODBC method is handy, and should be in my guide - I will update it in the next few days.

    Thanks

  9. #9
    Join Date
    Mar 2005
    Posts
    261
    Quote Originally Posted by jrat
    I had this same problem with a client's database, but found nothing that helped. So while this topic is a bit old I wanted to find a place to post my solution where people might see it when searching the Internet. The following VBScript allows the database to be opened in Access and the table is recreated. However, once you can open it you may want to create a new database and export/import the tables in case you have other system table corruptions. Just simply copy and paste this into notepad and save the file with a .VBS extension. Make sure you change the Const strDB = "C:\path of MDB. GOOD LUCK!



    Jarrett



    ---------------------- Cut Here -------------------------



    Const strDB = "C:\MYDATABASE.MDB"



    Dim dbConnection

    Set dbConnection = CreateObject("ADODB.Connection")

    dbConnection.Open "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & strDB & ";Uid=Admin;Pwd=;"

    dbConnection.Execute "Drop Table MSysAccessObjects"

    dbConnection.Close

    Set dbConnection = nothing



    MsgBox "You should now be able to open the database!"
    Note: the code you supplied is for Access 2000 files only (not 97, 2002 or 2003).

    Your suggestion is fine, and may work in some circumstances, but beware that any Access specific objects (forms/reports etc) will be lost by deleting that system table.
    Last edited by waynephillips; 04-21-06 at 04:41.

  10. #10
    Join Date
    Apr 2006
    Posts
    2
    Wayne,

    Thanks for the information. I thought the DB I was working on was a 97 DB. It may have been converted by the client. Luckily, our database for our clients is only used for our software ,so no reports/forms were lost.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •