What Is External Data?
External data is data that is stored outside the current database. External data may be data that you store in another Microsoft Access database, or it might be data that you store in a multitude of other file formats-including ISAM (Indexed Sequential Access Method), spreadsheet, ASCII, and more.
Access is an excellent front-end product, which means that it provides a powerful and effective means of presenting data-even data from external sources. You might opt to store data in places other than Access for many reasons. You can most effectively manage large databases, for example, on a back-end database server such as Microsoft SQL Server. You might store data in a FoxPro, dBASE, or Paradox file format because a legacy application written in one of those environments is using the data. You might download text data from a mainframe or midrange computer. Regardless of the reason the data is stored in another format, it is necessary that you understand how to manipulate this external data in Access applications. With the capability to access data from other sources, you can create queries, forms, and reports.
When you're accessing external data, you have two choices: You can import the data into an Access database or you can access the data by linking to it from an Access database. Importing the data is the optimum route (except with ODBC data sources), but it is not always possible. If you can't import external data, you should link to external files because Microsoft Access maintains a lot of information about these linked files. This optimizes performance when manipulating the external files.
Importing, Linking, and Opening Files: When and Why
When you import data into an Access table, Access makes a copy of the data and places it in the Access table. After Access imports the data, it treats the data like the data in any other native Access table. In fact, neither you nor Access has any way of knowing from where the data came. As a result, imported data offers the same performance and flexibility as any other Access table data.
Linking to external data is quite different from importing data. Linked data remains in its native format. By establishing a link to the external data, you can build queries, forms, and reports that present the data. After you create a link to external data, the link remains permanently established unless you explicitly remove it. The linked table appears in the Navigation Pane just like any other Access table, except that its icon is different. In fact, if the data source permits multiuser access, the users of an application can modify the data as can the users of the applications written in the data source's native database format (such as FoxPro, dBASE, or Paradox). The main difference between a linked table and a native table is that you cannot modify a linked table's structure from within Access.
Determining Whether to Import or Link
It is important that you understand when to import external data and when to link to external data. You should import external data in either of these circumstances:
- If you are migrating an existing system into Access.
- If you want to use external data to run a large volume of queries and reports, and you will not update the data. In this case, you want the added performance that native Access data provides.
When you are migrating <$Imigration;importing tables>an existing system to Access and you are ready to permanently migrate test or production data into an application, you import the tables into Access. You might also want to import external data if you convert the data into ASCII format on a regular basis and you want to use the data for reports. Instead of attempting to link to the data and suffering the performance hits associated with such a link, you can import the data each time you download it from the mainframe or midrange computer.
You should link to external data in any of the following circumstances:
- The data is used by a legacy application that requires the native file format.
- The data resides on an ODBC-compliant database server.
- You will access the data on a regular basis, making it prohibitive to keep the data up-to-date if you do not link to it.
Often, you won't have the time or resources to rewrite an application written in FoxPro, Paradox, or some other language. You might be developing additional applications that will share data with the legacy application, or you might want to use the strong querying and reporting capabilities of Access rather than develop queries and reports in the native environment.
If you link to the external data, users of existing applications can continue to work with the applications and their data. Access applications can retrieve and modify data without concern for corrupting, or in any other way harming, the data.
If the data resides in an ODBC database such as Microsoft SQL Server, you want to reap the data-retrieval benefits provided by a database server. By linking to the ODBC data source, you can take advantage of Access's ease of use as a front-end tool and also take advantage of client/server technology.
Finally, if you intend to access data on a regular basis, linking to the external table provides you with ease of use and performance benefits. After you create a link, in most cases, Access treats the table just like any other Access table.
Although this tutorial covers the process of importing external data, this is essentially a one-time process and doesn't require a lot of discussion. It is important to note, however, that after you import data into an Access table, you can no longer use the application in its native format to access the data.
In this tutorial:
- Sharing Data with Other Applications
- What Is External Data?
- Looking at Supported File Formats
- Exporting to an Excel Spreadsheet
- Exporting to ASCII
- Importing from Another Access Database
- Importing ASCII Data
- Linking to Tables in Another Access Database
- Linking to Another Type of Database
- Linking to SQL Server Databases
- The Linked Table Manager