The information in this article applies to:
SUMMARY
This article provides general information on Open Database Connectivity
(ODBC) and includes a list of the ODBC drivers that you must use in order
to retrieve and access data with Microsoft Query.
Term Definition
MORE INFORMATIONWHAT IS OPEN DATABASE CONNECTIVITY?Open Database Connectivity (ODBC) is a set of programming standards, or an application programming interface (API), that uses SQL to allow applications (such as Microsoft Query) to access data from relational and nonrelational database management systems (DBMSs). With ODBC, the client application asks what can be done and then delegates the tasks to a layer of dynamic link libraries (.DLLs).To provide such flexible architecture, ODBC takes the hybrid design approach: first, ODBC defines the least common denominator to determine the functional areas common to all available DBMSs; once a least common denominator is established, the client application (such as Microsoft Query) can further query the server to determine what advanced functionality is available (an example of this type of functionality is outer joins). The ODBC API is endorsed by the SQL Access Group (SAG) consortium, which includes companies such as Borland, Information Builders, Informix, Oracle and others. While the ODBC API is based on SAG's Call Level Interface (CLI) API, the ODBC API extends that specification into an open and vendor- neutral API (where open means the API is available for everyone to use and vendor-neutral means that the API is not limited to certain vendors, platforms, or DBMSs). WHAT DOES IT MEAN TO BE ODBC COMPLIANT?An application is said to be ODBC compliant when it conforms to the ODBC API. Compliance levels vary from application to application. The API has three compliance levels.
For every data source that the client application wants to connect to, there is a module, or .DLL, called "the driver." The driver translates the ODBC API calls to a format that the data source understands. The driver then sends the results back to the client application (or front-end). The driver sits between the driver manager (discussed below) and the network. The driver processes ODBC function calls, manages all exchanges between the application and the data source, and may translate the standard SQL to the native SQL of the target data source. ODBC provides two types of drivers: single tier and multiple tier. The Driver Manager (ODBC.DLL)In addition to the client application and the driver, ODBC includes a module called the driver manager (ODBC.DLL) that provides the application with a list of available drivers; the driver Manager loads and unloads these available drivers as required.The driver manager is located in your Windows System directory. All ODBC- compliant applications, such as Microsoft Access and Visual Basic 3.0, use this .DLL. NOTE: If you have Microsoft Access or another ODBC-complaint application installed on your computer, and you install Microsoft Query, you may be prompted to overwrite the existing ODBC.DLL. Because the ODBC.DLL file included with Microsoft Query is later version, you should update the file to this later version. Updating this file should not affect Microsoft Access or other ODBC-compliant applications. SINGLE-TIERED DRIVERSThe single-tiered driver uses the indexed sequential access method (ISAM). This type of driver not only processes the ODBC API calls, but acts as an SQL engine as well. An SQL engine parses, validates, and optimizes SQL statements, and then retrieves the data from the underlying data source directly. This means that there is no "smart" back-end that the driver communicates with; instead, the driver communicates directly with the file.FoxPro, dBASE, Btrieve Paradox, Microsoft Access, Microsoft Excel, and text files all use single-tiered drivers. Because implementing the SQL engine is a lot of work, these drivers are limited in the SQL they support and do not support advanced features such as transactions. FoxPro, dBASE, Btrieve Paradox, and Microsoft Access have two common drivers: SIMBA.DLL and MSJETDSP.DLL. A third driver, called the installable ISAM, is specific to each data source. These drivers are all located in the Windows System directory. The third driver for these applications are as follows:
NOTE: For Btrieve, WBTRCALL.DLL is also required to handle network requests. To obtain this driver, contact Novell. Examples of How ODBC Works with a Single-Tiered DriverParadox:
TWO-TIERED DRIVERS (ORACLE, SQL)The Oracle and SQL Server drivers are two-tiered drivers. Oracle and SQL Server are multi-user relational DBMSs. They contain powerful SQL engines to parse, validate, and optimize SQL statements and to retrieve the data. (Remember that the goal of client-server architecture is to divide the query process and delegate the pieces of the query to the resources best suited to handle them.) The role of the driver in this case is to translate the query request into a format (a data stream protocol) that the DBMS can understand.The ORACLE driver enables applications to access data in an ORACLE (version 6.0.34 or later) database through the ODBC interface. It communicates with the network through SQL*Net, which must be obtained from Oracle Corporation. The example below shows the path a query would take to an ORACLE table on a LAN Manager network using the Named Pipes/Netbeui driver (SQLNMP.DLL). (Note that this article does not focus on network connections and, therefore, does not list all possible network configurations.) Examples of How OBDC Works with a Two-Tiered DriverOracle:
THREE-TIERED DRIVERSA driver is three tiered if it sends the SQL request to a gateway process and the gateway sends it to the DBMS. An example of a gateway process involving a three-tiered configuration is an Open Data Services-based gateway that supports access to DEC RDB or IBM DB/2 databases.For more information about ODBC compliance see the "Microsoft Query User[ASCII 204]s Guide," Appendix B, or Chapter 1 of the ODBC Programmer's Reference. REFERENCES
"Microsoft Query User's Guide," Appendix B Additional query words: 6.00 officeinterop word6 w4wexcel
Keywords : xlquery |
Last Reviewed: June 1, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |