About converting an Access file

ShowWhen should I convert or enable an Access file?

Whether you should convert or enable a Microsoft Access file (Microsoft Access file: A database or project file. In Access 2007, database objects and data are stored in .accdb files. Earlier versions use.mdb files. An Access project file doesn't contain data, and is used to connect to a SQL Server database.) depends on which versions of Access users have upgraded to.

ShowWhen to convert from Access 97 or earlier to Access 2002 - 2003 file format

In most cases, you'll want to convert a previous-version Microsoft Access database (database: A collection of data related to a particular subject or purpose. Within a database, information about a particular entity, such as an employee or order, is categorized into tables, records, and fields.) to Access 2000 file format if all users have upgraded to Access 2000 or later, and you'll want to convert to Access 2002 - 2003 file format if all users have upgraded to Access 2002 or later. In Access 2002 or later, you can modify data and make design changes to an Access 2000 file. Although you can also enable (enabled database: A previous-version database that has been opened in Access 2000 or later without converting its format. To change the design of the database, you must open it in the version of Access in which it was created.) an Access 97 or earlier database in Access 2002 or later without converting it, you can change the design of objects (database objects: An Access database contains objects such as tables, queries, forms, reports, pages, macros, and modules. An Access project contains objects such as forms, reports, pages, macros, and modules.) only in the previous version.

Once you've converted an Access database to Microsoft Access 2000 or Access 2002 - 2003 file format, you can't open it in the previous version of Access. You can convert an Access 2000 database back to Access 97. However, you can't convert an Access 2000 database back to Access version 2.0 or 95.

If your Access database is a multiuser (shared) database (multiuser (shared) database: A database that permits more than one user to access and modify the same set of data at the same time.), and all users can't upgrade to Microsoft Access 2000 or later at the same time, you can split the database so that it is a front-end/back-end application (front-end/back-end application: A database application consisting of a "back-end" database file that contains tables, and copies of a "front-end" database file that contain all other database objects with links to the "back-end" tables.). You can then have different versions of the front end connected to the back end, which remains unaltered. Users of Access 2000 or later can use a converted version of the front end, where they can take advantage of new features.

ShowWhen to convert an Access 2000 file to Access 2002 - 2003 file format

If you want to save the Access file as an MDE (MDE file: A Microsoft Access 2003 or earlier database (.mdb) file with all modules compiled and all editable source code removed.) or ADE (ADE file: A Microsoft Access project (an .adp file for Access 2003 and earlier, an .accdp file for Access 2007 and later) with all modules compiled and all editable source code removed.) in Access 2002 or later, you must convert the file to Access 2002 - 2003 file format. Otherwise, you don't necessarily need to convert a Microsoft Access 2000 file to the Access 2002 - 2003 file format. If you're converting Access databases from Access 97 or earlier, it's recommended that you convert to Access 2000 file format first. Users of Access 2000 can open these Access files, and new Access 2002 or later features are available when you use an Access 2000 file in Access 2002 or later. Once you've converted an Access file to Access 2002 - 2003 file format, you can't open the file in Access 2000. However, you can convert an Access 2002 - 2003 file back to Access 2000.

Convert to Access 2002 - 2003 file format only if all users have upgraded to Access 2002 or later, and you have been successfully using the file in Access 2000 file format. If all users have upgraded to Access 2002 or later, you can develop an application in the Access 2002 - 2003 file format without having to make sure that any object, method, property or function you use is also available in Access 2000.

The Access 2002 - 2003 file format offers the following advantages:

  • Provision for unknown properties and objects that might exist in future versions of Access
  • Ability to save an Access file as an MDE or ADE while in Access 2002 or later
  • Improved storage format

ShowWhen to open a previous-version Access database in Access 2002 or later without converting it

You may want to enable (enabled database: A previous-version database that has been opened in Access 2000 or later without converting its format. To change the design of the database, you must open it in the version of Access in which it was created.) a Microsoft Access database (database: A collection of data related to a particular subject or purpose. Within a database, information about a particular entity, such as an employee or order, is categorized into tables, records, and fields.) in a multiuser (multiuser (shared) database: A database that permits more than one user to access and modify the same set of data at the same time.) environment where all users can't upgrade from Access 97 or earlier to Access 2002 or later at the same time. In this situation, a database must be used simultaneously with different versions of Microsoft Access, and users who have upgraded to Access 2002 or later can enable a database in a previous-version format.

When you're using Access 2002 or later to work with an enabled (enabled database: A previous-version database that has been opened in Access 2000 or later without converting its format. To change the design of the database, you must open it in the version of Access in which it was created.) previous-version Access database, you can use objects (database objects: An Access database contains objects such as tables, queries, forms, reports, pages, macros, and modules. An Access project contains objects such as forms, reports, pages, macros, and modules.) in the database to view and modify data. However, you can't save changes to database objects. To modify the design of an object or create a new object in the Access database, you must either open it in the previous version or convert the database to Microsoft Access 2000 or Access 2002 - 2003 file format.

ShowConverting a previous-version Access file to Access 2000 or Access 2002 - 2003 file format

You can convert a Microsoft Access database (Microsoft Access database: A collection of data and objects (such as tables, queries, or forms) that is related to a particular topic or purpose.) that was created in Access 2.0 or later to Access 2000 or Access 2002 - 2003 file format. Also, you can convert an Access project (Microsoft Access project: An Access file that connects to a Microsoft SQL Server database and is used to create client/server applications. A project file doesn't contain any data or data-definition-based objects, such as tables and views.) from Access 2000 to Access 2002 -2003 file format.

The following changes might affect the conversion of an Access database:

If your Access database uses add-ins (add-in: A supplemental program that adds custom commands or custom features to Microsoft Office.) or library databases (library database: A collection of procedures and database objects that you can call from any application. In order to use the items in the library, you must first establish a reference from the current database to the library database.) created in a Access 97 or earlier, you must convert them as well. However, you can use an add-in or library database created in Access 2000 with a file in Access 2002 - 2003 format.

  • DoMenuItem replaced with RunCommand     The DoMenuItem action is replaced in Microsoft Access 2000 or later with the RunCommand action; DoMenuItem is still supported for backwards compatibility. When you convert a database, the DoMenuItem action is automatically converted to the RunCommand action.
  • Toolbars and menu bars     Access 2002 or later still supports menu bar macros for applications created with previous version of Access. In Access 2000 or later, menu bars and shortcut menus (as well as toolbars) are created and customized from the Customize dialog box. You can also use this dialog box to customize the built-in menu bar and toolbars.

Microsoft Access 97 or later supports a new style of toolbars and menu bars. When you convert a Microsoft Access version 2.0 or 95 database to Microsoft Access 2000, any custom toolbars, as well as built-in toolbars, are automatically converted to the new style of toolbar. Custom menu bars, created with the Microsoft Access 95 Menu Builder or with macros that use AddMenu actions, are interpreted as the new-style menu bars when you open a converted Access database. However, they are not automatically converted, and you can't use the Customize dialog box to edit them until you have converted them.

ShowConverting a previous-version security-enabled Access database to Access 2000 or Access 2002 - 2003 file format

Converting a security-enabled Microsoft Access project (Microsoft Access project: An Access file that connects to a Microsoft SQL Server database and is used to create client/server applications. A project file doesn't contain any data or data-definition-based objects, such as tables and views.) from Access 2000 to Access 2002 - 2003 file format requires no additional action because security is maintained in the Microsoft SQL Server database (Microsoft SQL Server database: A database that consists of tables, views, indexes, stored procedures, functions, and triggers. You can connect your database to SQL Server data by using ODBC or by creating an Access project (*.adp) file.) that the Access project is connected to. However, there are additional considerations when you convert a security-enabled Access database (Microsoft Access database: A collection of data and objects (such as tables, queries, or forms) that is related to a particular topic or purpose.) from a previous version.

If all users of a previous-version security-enabled database will be upgrading to Microsoft Access 2000 or later, you should convert the Access database to Access 2000 file format. If all users have upgraded to Access 2002 or later, you can convert the Access database to Access 2002 - 2003 file format. If necessary, you can still use the corresponding workgroup information file without converting it. However, recreating the workgroup information file in Access 2002 or later is recommended.

If only some users of a security-enabled database will be upgrading to Access 2002 or later, you can share the database and workgroup information file across all versions of Microsoft Access currently in use.

 Important   User-level security (user-level security: When using user-level security in an Access database, a database administrator or an object's owner can grant individual users or groups of users specific permissions to tables, queries, forms, reports, and macros.) in Microsoft Access 2000 or later does not help protect Visual Basic code in modules (module: A collection of declarations, statements, and procedures stored together as one named unit. There are two types of modules: standard modules and class modules.) or code behind forms and reports. Code in a security-enabled database that you have converted from Access 97 or earlier does not maintain security measures until you create a password for the Visual Basic project (project: The set of all code modules in a database, including standard modules and class modules. By default, the project has the same name as the database.).

Before converting a security-enabled Access database (Microsoft Access database: A collection of data and objects (such as tables, queries, or forms) that is related to a particular topic or purpose.), make sure you're using the workgroup information file (workgroup information file: A file that Access reads at startup that contains information about the users in a workgroup. This information includes users' account names, their passwords, and the groups of which they are members.) that defines the user accounts used to access the database. The user account you use to log on during conversion must have the following permissions:

  • Open/Run and Open Exclusive permissions for the database itself
  • Administer permission on the MSysACES and MSysObjects system tables
  • Modify Design permissions for all other tables in the database, or you must be the owner of all tables in the database
  • Read Design permissions for all objects in the database

ShowConverting a previous-version replica set to Access 2000 or Access 2002 - 2003 file format

Synchronizing partial replicas in Access 2000 file format with a Design Master (Design Master: The only member of the replica set in which you can make changes to the database structure that can be propagated to other replicas.) in Access 2002 - 2003 file format might result in the loss of database objects (database objects: An Access database contains objects such as tables, queries, forms, reports, pages, macros, and modules. An Access project contains objects such as forms, reports, pages, macros, and modules.) in the Visual Basic for Applications (VBA) project (project: The set of all code modules in a database, including standard modules and class modules. By default, the project has the same name as the database.) of the Access database.

  • If you convert a Design Master from Access 95 or 97 to Access 2000 or Access 2002 - 2003 file format, you can no longer synchronize with other Access 95 or 97 replicas. You must convert the Access 95 or 97 replicas to the appropriate file format (Access 2000 or later).

A Design Master in Access 2000 or later can synchronize only with replicas in Access 2000 or Access 2002 - 2003 file format. The only way to convert Access 2000 replicas to Access 2002 - 2003 file format is by synchronizing them with a converted Design Master.

If you convert a Design Master from Access 2000 to Access 2002 - 2003 file format and then synchronize with other replicas in Access 2000 file format, those replicas are converted to Access 2002 - 2003 file format, and you won't be able to open them in Access 2000.

ShowConverting an Access 2000 or Access 2002 - 2003 file to a previous version

You can convert a Microsoft Access database (Microsoft Access database: A collection of data and objects (such as tables, queries, or forms) that is related to a particular topic or purpose.) in Access 2000 or Access 2002 - 2003 file format back to Access 97. You can also convert an Access database or an Access project (Microsoft Access project: An Access file that connects to a Microsoft SQL Server database and is used to create client/server applications. A project file doesn't contain any data or data-definition-based objects, such as tables and views.) in Access 2002 - 2003 file format back to Access 2000 file format.

ShowConverting an Access 2000 or later database back to Access 97

You can convert a Microsoft Access 2000 or later database to an Access 97 database if it is not a member of a replica set (replica set: The Design Master and all replicas that share the same database design and unique replica set identifier.). Any functionality that is specific to Access 2000 or later is lost when you convert the database to Access 97. You can't convert an Access project (Microsoft Access project: An Access file that connects to a Microsoft SQL Server database and is used to create client/server applications. A project file doesn't contain any data or data-definition-based objects, such as tables and views.) back to Access 97.

Important Unlike Access 2000 or later, Access 97 is not designed to work with ActiveX Data Objects (ADO) (ActiveX Data Objects (ADO): A data access interface that communicates with OLE DB-compliant data sources to connect to, retrieve, manipulate, and update data.).

Converting an Access 2000 or later database to an Access 97 database makes the following changes to the converted database.

If you are converting a security-enabled Access database, the user account that you use to log on must have the following permissions:

If you have employed a password to help protect the Access database, you can convert it without removing the password. If you have employed a password to help protect the Microsoft Visual Basic for Applications (VBA) code, you must supply the password in the Visual Basic Editor (Visual Basic Editor: An environment in which you write new and edit existing Visual Basic for Applications code and procedures. The Visual Basic Editor contains a complete debugging toolset for finding syntax, run-time, and logic problems in your code.) during conversion.

ShowConverting an Access 2002 - 2003 file back to Access 2000

You can convert an Access 2002 or later database or Access 2002 or later project back to Access 2000 file format. When you use an Access 2000 file in Access 2002 or later, new Access 2002 or later features are still available. However, those features are not available when you use the same file in Access 2000. If the file contains Visual Basic procedures that use objects, functions, properties, methods, or arguments available only in Access 2002 or later, you'll receive a compile error when you open the Access file in Access 2000.

ShowThe Conversion Errors table

If Microsoft Access encounters errors while converting an Access file (Microsoft Access file: A database or project file. In Access 2007, database objects and data are stored in .accdb files. Earlier versions use.mdb files. An Access project file doesn't contain data, and is used to connect to a SQL Server database.), you can view a summary of these errors by opening the Conversion Errors table in the new Access file. The Conversion Errors table contains the following columns:

Object Type     The type of database object (database objects: An Access database contains objects such as tables, queries, forms, reports, pages, macros, and modules. An Access project contains objects such as forms, reports, pages, macros, and modules.) in which Access encountered an error, or "Database" if Access encountered an error that is not specific to a particular type of object.

Object Name     The name of the object in which Access encountered an error. If Access encounters a compilation error during conversion, however, the name of the module that contains the error is not specified.

Error Description     If necessary, you can press SHIFT+F2 to view the entire description of the error.

ShowAbout opening a previous-version Access file without converting it

When you open a Microsoft Access version 2.0 database, an Access 95 database, or an Access 97 database in Access 2002 or later, the Convert/Open Database dialog box asks you to choose between converting and opening (enabling) the Access database. When an Access 2002 or later user enables the database, Access maintains the original format so that users of previous versions of Access can continue to use the database. For example, if a shared database is created in Access version 2.0, it can be used with Access version 2.0 and enabled in Access 2002 or later.

When you use an enabled Access database in Access 2002 or later, you can view database objects (database objects: An Access database contains objects such as tables, queries, forms, reports, pages, macros, and modules. An Access project contains objects such as forms, reports, pages, macros, and modules.) and add, delete, or modify records in Access 2002 or later, but you can't modify the design of objects. To modify the design of existing objects or to add new objects, you must open the file in the previous version of Access.

Size of an enabled Access database Your Microsoft Access database may increase in size when you enable it. If you have already enabled a database in a previous version of Access, and if you enable it again in Access 2002 or later, the size of the Visual Basic project (project: The set of all code modules in a database, including standard modules and class modules. By default, the project has the same name as the database.) will increase even more. In rare cases, you may have enabled a Access version 2.0 database in Access 95, enabled it again in Access 97, and enabled it again in Access 2000 or later; in this case, the Visual Basic project must store information in the format of each version.

Enabling a security-enabled Access database     If your Microsoft Access database has enabled security, you can make sure that it retains its security by recreating the workgroup information file in Access 2002 or later. If you cannot recreate the workgroup information file, you can use the Workgroup Administrator to join the security-enabled database's previous-version workgroup information file. However, it is recommended that you convert the workgroup information file to Access 2000 file format before you join it. In Access 2002 or later, you can use a workgroup information file that was created in a previous version; however you can't use a workgroup information file created in Access 2002 or later in Access 97 or earlier.

As long as you use the database with its original workgroup information, it retains all its security except permissions for the modules. In Access 2000 or later, you can't use user-level security (user-level security: When using user-level security in an Access database, a database administrator or an object's owner can grant individual users or groups of users specific permissions to tables, queries, forms, reports, and macros.) to help protect modules. However, you can help protect Visual Basic for Applications (VBA) code with a password.

Code compatibility     Microsoft Access 2000 or later does not support the DAO (Data Access Objects (DAO): A data access interface that communicates with Microsoft Jet and ODBC-compliant data sources to connect to, retrieve, manipulate, and update data and the database structure.) 2.5/3.x compatibility library. If you attempt to enable an Access database in which the code contains older versions of DAO objects, methods, and properties that depend on the DAO 2.5/3.x compatibility library, you receive a message that there were compilation errors during the enabling of the database. Before you enable the Access database, update the code so that it does not depend on the DAO 2.5/3.x compatibility library.

New style of toolbars and menu bars     Microsoft Access 97 or later supports a new style of toolbars and menu bars. When you enable an Access 95 database in Access 2002 or later, custom toolbars are converted to the new style but the conversion isn't saved. Custom menu bars are interpreted as the new style menu bar, but the menu bar macros are not converted and continue to be supported.

 
 
Applies to:
Access 2003