Tuesday, June 29, 2010

How to fix 'Unrecognized database format 'filename.mdb' error in MS Access

Microsoft Access is a widely-used desktop relational database application. The .mdb files created with this program contain tables, fields, data entry forms, queries, stored procedures, reports, and more. An .mdb file stores data as continuous pages with a fixed size. The first page, database definition page, holds the most important definitions of the database. And, if this page structure gets damaged due to any reason, Access will not be able to recognize and read pages in the file and will report an error. In such situations, it becomes important to repair corrupt .mdb file or access the data from a clean and updated backup. However, if no backup is available, then you must consider using an advanced Access recovery software.

Consider a practical scenario, wherein, you try and mount an Access database (related to your employees personal details) and receive the following error message:

Unrecognized database format 'filename.mdb'

In the above error, the filename.mdb refers to corrupt .mdb file. As a result of the error, you cannot access relevant information related to your employees.

Cause

There might be two possible reasons for this particular error:

1.The error can appear when you are trying to open the Access database in an earlier version instead of opening it in the newer version of MS Access
2.The error can also appear if your MS Access database is corrupt

Resolution

Try the following Access database recovery steps in order to access database information:

1.You must convert the database into the lower version of MS Access, using your current version. After converting, you can open the database with an older version.
2.In order to repair the corrupt Access database, you can use the inbuilt repair utility, Compact and Repair. Consider the following steps:
On the Tools menu, point to Database Utilities, and then click Compact and Repair Database.
In the Database to Compact From dialog box, specify the Access file you want to compact, and then click Compact.
In the Compact Database Into dialog box, specify a name, drive, and folder for the compacted Access file.
Click Save.
If after observing the above-mentioned steps, you still encounter the same error, download an Access repair software from the Internet.

Sunday, June 27, 2010

Resolving 'The Microsoft Jet database engine could not find the object MSysDb...' Access error

The Microsoft Jet Database Engine is a database engine for many Microsoft applications including MS Access. It is the underlying component of Access. Microsoft Access 95, 97 create a Microsoft Jet 3.0 format database file, whereas, Access 2000, 2002 and 2003 versions create a Microsoft Jet 4.0 format database file. At times, you may encounter several errors while mounting your Access database files (.mdb or .accdb) or in worst scenarios you won't be able to even open MS Access application. Such situations surface due to corrupt Access database files and result in data inaccessibility. You can restore the data by using an updated backup. However, in the absence of a clean and valid backup, you are required to opt for an advanced Access recovery utility.

Consider a scenario, wherein, you are having an Access database in a multi-user environment, and when you try and open the application, you may receive the following error:

“The Microsoft Jet database engine could not find the object MsysDb. Make sure the object exists and that you spell its name and path name.”

The above error message would restrict you from mounting the Access database.

Cause

The root cause of the error could be .mdb or .accdb file corruption. These Jet database files become corrupt due to various reasons including interrupted read/write oepration, faulty networking hardware, or opening and saving the file in another program.

Resolution

In order to fix the problem, consider using the following Access database recovery Step:-

Take a backup of the affected Access database file
Run the built-in Compact and Repair utility (Jetcomp.exe), follow these steps:
1.Close the current database
2.On the Tools menu, point to Database utilities, and then click Compact and Repair database
3.In the Database to Compact From dialog box, specify the name, drive and folder for the compacted Access file
4.Click Save
5.Rebuilt the database by importing tables into a new database

If you don't get the desired results, you can always go for a third-party Access repair software. Such tools are designed to thoroughly scan corrupt .mdb or .accdb files by applying improved scanning algorithms and and extract all information.

Thursday, June 24, 2010

Resolving 'An error occurred while loading Form_FormName...' error while upgrading to Access 2003

In Microsoft Access, you can enter data into tables in a quick and easiest way by using forms. You can create three types of forms in Access viz data entry-forms, switchboards and custom-dialog boxes. Thus, form is an important part of Microsoft Access database. At times, when you try and upgrade to a recent version of Microsoft Access, you may receive an error. As data becomes inaccessible, it becomes imperative for you to look for Access recovery strategies. You can use an updated backup to restore the corrupt database or use Compact and Repair inbuilt utility. If nothing works in your favor or you don't get the required results, it is recommended you switch to a third-party repair software.

Consider a practical scenario, wherein, you attempt to convert an Access 2002 (XP) database to Access 2003, you may receive the following error:

“An error occurred while loading Form_FormName. Do you want to continue?”

And, if you click Yes, you receive another error message which goes like:

“Invalid procedure call or argument”

Cause

The above error suggests that Microsoft Access 2002 (XP) database is corrupt.

Resolution

You can try the following Access database recovery steps in order to fix the problem:

Since Access 2002 and Access 2000 use different binaries for compile code, a decompile may work. (Microsoft Access keep two copies of the code i.e. text version and compiled version, if both are out of sync, you may come across strange errors. In such scenarios, a decompile helps by dumping the compiled version.)

1.Make a copy of the .MDB file while Access is not running
2.Use the Compact and Repair tool
3.Close Access. Open a command prompt and enter the following
“C:\Program Files\Microsoft office\office\msaccess.exe" /decompile "c:\My Documents\MyDatabase.mdb”
4.Again Compact
5.Try the conversion again, the error may not surface this time.

If you are not able to overcome the nagging problem, do not worry, go to the Internet and download a professional access repair utility. Such utilities are able to repair an MS Access database when it is not compiled or if it has got corrupted due to an external reason.

Wednesday, June 23, 2010

How to repair corrupt Access 2000 database after failed database table export


In the databases, referential integrity is termed as the set of rules that ensures that you cannot delete or move a record in a table if a matching record is present in another table. It is a very useful feature that makes sure that there is no redundancy in the database. However, at times Access behaves in an inconsistent manner because of the referential integrity enforced upon itself by a database table. Such scenarios can lead to corruption in the database. Other reasons for database corruption could be virus infections, power outages, concurrent modifications from multiple users, etc. You should use in-house methods to resolve the problem. At times, you may not be able to repair the corrupted database yourself. In such cases, you should use a third-party Access database recovery software to perform recover Access database.

Consider a scenario wherein you have MS Access 2000 database. From this database, you try to export a table to another database but you fail to do so. An error message is displayed, that is:

“The Microsoft Jet Database Engine could not find the Object ". Make sure the object exists and that you spelled its name correctly.”

When you click OK on the error message, then the following error message is displayed:

An error occurred trying to export the data from table 'tablename'. The data was not exported.”
Cause:

The root cause of this erroneous situation is that the table that you want to export contains a self-join and Memo field. Moreover, you have imposed referential integrity on the table.

Resolution:

  • To resolve this error, you should perform the following steps:
  • Convert all the Memo fields in the table to Text fields, OR
  • Move all the Memo fields to another table, and then
  • Implement a 1:1 relationship between the tables to remove the referential integrity.

The problem would be resolved by using the mentioned steps. Now, try to export the table. It should be working fine now. However, if the problem is persisting then you should use a third-party MDB recovery software to recover Access database. Such read-only tools are able to extract the corrupted data from the Access file without overwriting the original file.