Deploy an Access application

Access provides a feature-rich platform for developing database applications. A database application is a computer program that provides both a way to store and manage data and a user interface that follows the logic of business tasks (application logic).

To deploy Access applications that can run without an installation of Access on a user's computer, you can distribute them along with the Access Runtime, which is available for free from the Download Center.

This article discusses basic deployment planning, the features of the Access Runtime, and how to download the Runtime. This article also provides an overview of deploying database applications by using Access.

What do you want to do?

Plan for deployment

Understand the Access Runtime

Download the Access Runtime

Deploy an Access application

Plan for deployment

Before you begin, you should ask yourself the following questions about the way that the application will be deployed.

Should the data and the logic be separated?

You can create an Access application that combines data management and application logic in one file. This is the default application structure in Access. Combining data management and application logic in one file provides the simplest deployment method, but this method works best if only one person uses the application at a time, and it involves some risk. For example, a user could cause data loss by unintentionally deleting or damaging the application file.

In most cases, you should separate data management and application logic. This helps improve:

  • Security    Using a server for data storage can help keep data secure.

  • Performance    Using a split database or a database server can help reduce network traffic.

  • Customizability    New macro actions for the Navigation Pane can help you control who sees what. You can distribute different application logic files to different users.

Ways to separate data and logic

One way to separate data and logic is by using the Access Database command (on the Database Tools tab, in the Move Data group). The Access Database command splits your database application into two Access files: one for data and one for logic. When you use the Access Database command, Access creates a file with "_be" (meaning "back-end") appended to the file name — for example, if the original database file name is "Database1.accdb," Access creates a new database file named "Database1_be.accdb."

Another way to separate data management and application logic is by using a database server program (such as Microsoft SQL Server) for data management, and Access for application logic.

To decide whether a single Access file is sufficient for both data management and application logic, consider the following:

  • Data integrity and security    Access users must have read/write permissions for the file that contains the application logic. If you combine data and logic in one file, the data is exposed to the same risks as the application logic.

    An Access application that uses separate logic and data files can help protect data integrity and security by leveraging NTFS security features. Because users need explicit read/write access only to the application logic file, the data file can be made more secure.

    Your application may require further security options, such as the ability to control which users have access to particular data. In this case, you should use a server product such as SQL Server or a Windows server operating system featuring Windows SharePoint Services to store and manage your application data, and use Access to provide the application logic.

  • Scalability    An Access file can have a maximum size of 2 gigabytes (GB). Although 2GB is a substantial amount of text data, it may be insufficient for some applications, particularly applications that store attachments in database records. If you separate the data and the logic, your application can accommodate more data. If you expect that users will store a large volume of data, you might consider using more than one Access data file.

    You should also review the Access program specifications for other scalability information. To learn more about Access specifications, see the article Access specifications.

  • Network capacity    If multiple users will need to use the application at the same time over a network, data corruption is more likely to occur if the data and logic are combined in one file. Moreover, if you combine the data and the logic in one Access file, you cannot optimize the network traffic that Access generates. If multiple users will simultaneously use your application over a network, you should separate the data and the logic, either by using two or more Access files, or by using a database server product for data and Access for application logic.

What will the network environment be like?

If your users are all on the same local area network, or if your application is not used over a network, a single application file can perform well in most circumstances.

Network performance will be better if you separate the data and the logic. If your users will not be on the same local area network, use a server to store and manage your data, and use Access for application logic.

Will users have Access?

If all of your users will have Access installed on their computers, they can open and use the application as they would any Access database file.

If some or all of your users will not have Access installed on their computers, you will need to deploy the Access Runtime software to those users when you deploy your application.

Top of Page

Understand the Access Runtime

The Access Runtime is a redistributable program that allows people who do not have Access installed on their computers to use Access database applications. When you open an Access database by using the Access Runtime, the database opens in runtime mode.

What is runtime mode?

Runtime mode is an Access operating mode in which certain Access features are not available by default. Some of these unavailable features can be made available in runtime mode, however.

Which features are not available in runtime mode?

The following Access features are not available in runtime mode:

  • Navigation Pane    The Navigation Pane is not available in runtime mode. This helps prevent users from accessing arbitrary objects in your database application. Only those objects that you expose to users — for example, by providing a switchboard form — can be opened while using runtime mode. You cannot make the Navigation Pane available in runtime mode.

  • The Ribbon    By default, the Ribbon is not available in runtime mode. This helps prevent users from creating or modifying database objects, and from performing other potentially harmful actions, such as connecting to new data sources or exporting data in ways that you do not intend. You can create a custom Ribbon, and then associate that Ribbon with a form or report. You cannot expose the default Ribbon tabs in runtime mode.

  • Design view and Layout view    Design view and Layout view are not available for any database objects in runtime mode. This helps prevent users from modifying the design of objects in your database application. You cannot enable Design view or Layout view in runtime mode.

  • Help    By default, integrated Help is not available in runtime mode. Because you control what functionality is available in your runtime mode application, some of the standard integrated Access Help may be irrelevant to people who use your application, and could potentially confuse or frustrate them. You could create your own custom Help file to complement your runtime mode application.

Can I open an Access database in runtime mode without using the Access Runtime software?

You can run any Access database in runtime mode on a computer that has the full version of Access installed. To run an Access database in runtime mode, do one of the following:

  • Change the file name extension of the database file from .accdb to .accdr.

  • Create a shortcut to the database, and include the /Runtime command-line switch in the shortcut.

Does runtime mode make my database more secure?

Although runtime mode limits the availability of navigation and design features, you should not use runtime mode as the primary means of securing a database application. On a computer that has the full version of Access installed, it may be possible for a user to open a runtime database application as a regular database application (that is, with all features available) and then to change the design or perform other unwanted actions.

Even if you deploy your database application only on computers that do not have the full version of Access installed, it is still possible for a user to transfer the application to a computer that does have the full version of Access installed, and then open the runtime database application as a regular database application.

Note: If you want to distribute an Access application so that users cannot modify the design of forms, reports, or Microsoft Visual Basic for Applications (VBA) modules, consider using a compiled binary file (.accde). For more information about using a compiled binary file, see the section Decide which file format to use, later in this article.

Top of Page

Download the Access Runtime

To download the Access Runtime from the Microsoft Download Center, click the appropriate link for your version:

No purchase is necessary to download, use, or redistribute the Access Runtime, and there is no limit on the number of users to whom you can distribute the Runtime.

Top of Page

Deploy an Access application

To deploy an Access application, at a minimum you need to do the following tasks:

  1. Create the application    Your application should provide a way for users to open and use database objects. If your application does not provide such means, your users will need Access installed on their computers to use the application. Moreover, you will not be able to predict how users will navigate within your application, and it will be more difficult for you to provide complete application documentation. Furthermore, if users open your application by using the Access Runtime software, the built-in Access navigation features will be unavailable.

    One approach is to create a form that has command buttons that open database objects or perform other actions, and then specify that form as the default form to open when the application starts.

    Note: For Help on creating a form, see the topic, Create a form by using the Form tool.

    How do I specify the default form to open?

    1. Click File > Options

    2. In the left pane of the Access Options dialog box, click Current Database.

    3. In the right pane, under Application Options, select the default form that you want by using the Display Form combo box.

    You can also create a custom Ribbon, and then associate that Ribbon with a form that opens when your application starts. For more information about creating a custom Ribbon, see the article Create a custom ribbon in Access.

  2. Install the application    There are several options and considerations for installing an application. You may want to deploy a particular file format to better control how users will use the application. Alternatively, you could package the application to make it easier to install, or deploy separate data and logic components.

    You can find more information about these options and considerations in the following sections.

Decide which file format to use

There are four Access file formats that you can use when you deploy an application:

  • .accdb    This is the default file format for Access. When you deploy an application in this format, users have the most options to customize and navigate the application in whatever way they choose. If you want to ensure that users do not change the design of your application, you should use the .accde file format. In addition, a user cannot easily determine whether an .accdb file has been changed after you packaged it — to make this obvious, use the .accdc file format.

  • .accdc    This format is also known as an Access Deployment file. An Access Deployment file comprises an application file and a digital signature that is associated with that file. This file format assures users that no one has changed the application file after you packaged it. You can apply this format to a default format Access file (.accdb), or to an Access compiled binary file (.accde).

    You can put only one application file in an Access Deployment file. If your application has separate data and logic files, you can package them separately.

  • .accde    This format is also known as a compiled binary file. In Access, a compiled binary file is a database application file that has been saved with all of the VBA code compiled. No VBA source code remains in an Access compiled binary file.

    You can use the Access Runtime to open an Access compiled binary file. However, by default, the Runtime does not recognize the .accde file name extension. To open a compiled binary file by using the Access Runtime, create a shortcut that points to the Runtime, and include the path to the compiled binary file that you want the shortcut to open.

    Important: If users open a compiled binary file by using an earlier version of Access than the version in which it was compiled, users cannot open the compiled binary file. To resolve this issue, you should compile the binary file in the Access version in which your users have installed.

    How do I save an Access file as a compiled binary file?

    1. In Access, open the database (.accdb file) that you want to save as a compiled binary file (.accde).

    2. Click the File tab and then click Save As.

    3. Under Database File Types, click Make ACCDE and then click Save As.

    4. In the Save As dialog box, browse to the folder in which you want to save the file, type a name for the file in the File Name box, and then click Save.

  • .accdr    This format enables you to deploy an application that opens in runtime mode. Deploying a runtime application can help you control the way that it is used, although it is not a means of securing an application. For more information about runtime mode, see the section Understand the Access Runtime.

Package and sign an Access database

Access makes it easier and faster to sign and distribute a database than in earlier versions. After you create an .accdb file or .accde file, you can package the file, apply a digital signature to the package, and then distribute the signed package to other users. The Package-and-Sign feature places the database in an Access Deployment (.accdc) file, signs the package, and then places the code-signed package at a location on the user's computer that you determine. Users can then extract the database from the package and work directly in the database (not in the package file).

Note: The feature described in this section packages an Access file and applies a digital signature to the package that helps indicate to users that the file is trustworthy.

Remember these facts as you proceed to create and sign a package:

  • Packaging a database and signing the package are ways to convey trust. When you or your users receive the package, the signature confirms that the database has not been tampered with. If you trust the author, you can enable the content.

  • The Package-and-Sign feature applies only to databases saved in the .accdb file format. Access provides tools from earlier versions of Microsoft Office that you can use to sign and distribute databases that were created in an earlier .mdb file format. You cannot use the tools from earlier versions of Office to sign and deploy files that were created in the newer .accdb file formats.

  • You can add only one database file to a package.

  • When you package and sign a database, all of the objects in the database file are code signed, not just macros or code modules. The packaging and signing process also compresses the package file to help reduce download times.

  • You can extract databases from package files that are located on SharePoint servers.

The following sections explain how to create a signed package file and use the database in a signed package file.

Note: To complete these steps, you must have at least one security certificate available. If you don't have a certificate installed on your computer, you can create one by using the SelfCert tool. For information about creating a private security certificate, see the article Show trust by adding a digital signature.

Create a signed package

  1. Open the database that you want to package and sign.

  2. Click the File tab and then click Save As.

  3. Under Database File Types, click Package and Sign and then click Save As.

  4. In the Select Certificate dialog box, select a digital certificate, and then click OK.

    The Create Microsoft Office Access Signed Package dialog box appears.

  5. In the Save in list, select a location for your signed database package.

  6. Enter a name for the signed package in the File name box, and then click Create.

    Access creates the .accdc file and places it in the location that you chose.

Extract and use a signed package

  1. Click File > Open.

  2. In the Open dialog box, select Microsoft Office Access Signed Packages (*.accdc) as the file type.

  3. In the Look in list, locate the folder that contains your .accdc file, select the file, and then click Open.

  4. Do one of the following:

    • If you chose to trust the digital certificate that was applied to the deployment package, the Extract Database To dialog box appears. Go to step 5.

    • If you have not yet chosen to trust the digital certificate, an advisory message appears.

      1. Advisory message

      2. If you trust the database, click Open. If you trust any certificate from that provider, click Trust all from publisher. The Extract Database To dialog box appears.

  5. Optionally, in the Save in list, select a location for the extracted database and then, in the File name box, enter a different name for the extracted database.

If you are unsure of whether to trust a certificate, the article How to tell if a digital signature is trustworthy provides general information about checking the dates and other items in a certificate to help ensure that it is valid.

Top of Page

Expand your Office skills
Explore training
Get new features first
Join Office Insiders

Was this information helpful?

Thank you for your feedback!

Thank you for your feedback! It sounds like it might be helpful to connect you to one of our Office support agents.