Location of Solution Components

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

Because network file access is typically slower than local disk access, you might want to improve performance by storing some of your solution's components on the local workstation. With most network operating systems, you have a great deal of flexibility for controlling where various components of your multiuser solution reside. For this discussion, components are grouped into two categories:

  • Static components   The parts of your solution that don't change often. The dynamic-link libraries (.dll) and executable files (.exe) that make up Access and the Jet database engine are examples of static components. Components in your solution itself, such as forms, reports, and program code, are also static components.

  • Active components   The files that contain the actual data that your solution's users access in a multiuser environment. These can include Access databases, external database files such as Microsoft FoxPro® database files, or ODBC databases stored on database servers.

Because static components don't often change, they are ideal candidates for workstation storage. In this scenario, you install Access and the Jet database engine components on the local workstation along with your solution's static objects. Active components, such as your solution's data files, are stored on the network server. To do this with an Access database, you split your database solution into a back-end database that contains only tables, and a front-end database that contains your solution's queries, forms, reports, macros, and modules, and then create links to the tables in the back-end database. Details about how this is done are provided in the following section, "The Two-Database Approach." When you store static components on local workstations, you optimize performance; the tradeoff is that you have to worry about updating objects on local workstations when the solution's design changes.

In situations where you would like greater control over modification of static components, or where user workstations don't have sufficient disk space, static components can be stored on the network. This has the obvious effect of increasing network traffic and reducing application performance, but it also minimizes administrative issues.