Results 1 to 4 of 4
  1. #1
    Join Date
    Mar 2004
    Posts
    44

    Unanswered: cannot open Access 97 database

    Even though I installed Access 97, I cannot open a certain database. It says that it has an unrecognized database format. I tried compact/repair and that didn't work. Could the database itself be corrupt?

  2. #2
    Join Date
    Nov 2003
    Location
    Sussex, England
    Posts
    404

    Corrupt??

    It could be corrupt, or it could (somehow) be in a later version of Access (that message is very common for both possibilities).

    The only way to be certain is to, somehow, get hold of the latest copy of Access (on a friend's machine perhaps) and try to open the database with that.

    Other than that, nothing springs to mind except creating a blank database and trying to import objects from your unreadable database into it, with any luck you'll get a different error message.

  3. #3
    Join Date
    Mar 2004
    Posts
    44
    I've tried opening it in Access 97 and Access 2003. Creating a new database and importing the files didn't work. I'm left with the conclusion that the program is corrupt but is there any way to fix it besides compact and repair?

  4. #4
    Join Date
    May 2004
    Posts
    159
    Quote Originally Posted by cpreece
    I've tried opening it in Access 97 and Access 2003. Creating a new database and importing the files didn't work. I'm left with the conclusion that the program is corrupt but is there any way to fix it besides compact and repair?
    Jetcomp from Microsoft may work where the standard compact and repair doesn't.
    "Jetcomp.exe is a standalone utility that allows you to compact databases created with Microsoft Jet database engine 3.x and 4.x. This utility may be used in conjunction with Microsoft Jet database engine 3.x and 4.x for recovering corrupted databases. Although it is possible to use the Microsoft Access Compact utility or the CompactDatabase method with Microsoft Jet database engine 3.x and 4.x, Jetcomp.exe may be able to recover some databases that these utilities could not. This is because the Microsoft Access Compact utility and the CompactDatabase method attempt to open and close a database before attempting to compact it. In certain cases where these utilities may not be able to reopen the database, Compact will be unable to proceed, preventing recovery of the database. Jetcomp.exe does not attempt to open and close the database before compacting, and may be able to recover some databases that the Microsoft Access compact utility and the CompactDatabase method could not. Jetcomp.exe is a freely distributable utility, "
    "Issues Fixed by Updated Compact Utility

    Compact will currently fix the following issues with a database.

    Problem Result Resolution
    Missing index(s) on MSysObjects. Database cannot be opened and is unusable. Compact will ignore the existence of indexes on the MSysObjects table and will scan the table instead. The destination database will contain the necessary indexes on the MSysObjects table to allow the database to be opened.
    Commit bytes are left in a suspect state. Database cannot be opened and typically required the repair process to be run. Compact will ignore the status of the commit bytes and continue to process while correcting for any errors.
    Properties are missing for a table. The table cannot be open from Microsoft Access, but may be able to be open from DAO’s OpenRecordSet method. Properties for a table are stored in MSysObjects in the LVProp column. This column is a long value column falling under the issues discussed above. The Jet database engine will reset the LVProp column to NULL, effectively removing all properties for the table. It will also log a row in MSysCompactError, but there will not be a bookmark to identify the row in the destination database.
    Pointers in non-system table long value columns point to invalid locations. The Jet database engine will typically return error # 3197, which appears to be a multi-user error. The Jet database engine will reset the LV column to sixteen number signs (#). This is done to allow the user to see what LV column could not be read. The Jet database engine will also log a row in MSysCompactError with a bookmark to identify the row in the destination database.
    Size of LV column in data row is different than size reported in LV page. The Jet database engine will typically return error # 3197, which appears to be a multi-user error. The Jet database engine will reset the LV column to sixteen number signs (#). This is done to allow the user to see what LV column could not be read. The Jet database engine will also log a row in MSysCompactError with a bookmark to identify the row in the destination database.
    Last edited by WilliamS; 09-20-04 at 11:26.

Posting Permissions

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