Frequently asked questions for self help.

Knowledge base article 80

Database compatibility with MDB

Since Ability Office 2000, the Database format we use is identical to Microsoft's MDB. However, there are different versions of MDB format and these are generally not backward compatable. For example, Microsoft Access 97 cannot open a file created with Access 2000. Similar applies to Ability. The following table sums it up:

MDB/ADB version Ability Microsoft
2 Ability Database 98 Access 2.0
3 not used Access 95, Access 97
4 Ability Database 2000, 2002 & 4 Access 2000, 2002 & 2003

Note: the above does not imply that Microsoft Access 2000 can open Access 2002 files - for this complication, please refer to Microsoft!

In general, Ability (and Access) will update the mdb or adb to the latest version. This is usually desireable unless you need to have the file opened by some earlier version (of Access generally). You can use DAO methods to change the database version back to "3" from "4" (earlier is not possible) as follows:

1. Start Database and select Tools/Macros and create a new macro called ConvertJetMDB

2. Copy and paste the following code to create the macro

Sub ConvertJetMDB()
  dbName = "C:\path\olddb.MDB"
  dbNewName = "C:\path\newdb.MDB"
  Set dbdao = CreateObject("DAO.DBEngine.36")
  MsgBox "DAO OK, version is " & dbdao.Version

  dbver = 32
  dbdao.CompactDatabase dbName, dbNewName, ";LANGID=0x0409;CP=1252;COUNTRY=0", dbver
  Set newdb = dbdao.OpenDatabase(dbNewName)
  MsgBox "Database opened OK - format version is " & newdb.Version
End Sub

3. Adjust the database names to suit and right-click Run to convert the mdb

The end result is an Access 97 compatible database that can be opened by Ability Database 2002, Access 97 (and later).