Skip to main content Skip to footer

Using Oracle ODBC Drivers

What is ODBC?

Open Database Connectivity (ODBC) provides a standard interface that allows one application to access many different data sources. The application's source code does not have to be recompiled for each data source. A database driver links the application to a specific data source. A database driver is a dynamic-link library that an application can invoke on demand to gain access to a particular data source. Therefore, the application can access any data source for which a database driver exists.

The ODBC interface defines the following:

  • A library of ODBC function calls that allows an application to connect to a data source, execute structured query language (SQL) statements, and retrieve results.

  • SQL syntax based on the SQL-99 specification.

  • A standard set of error codes.

  • A standard way to connect to and log in to a data source.

  • A standard representation for data types.

The following figure shows the components of the ODBC model. The model begins with an ODBC application making a call to the Driver Manager through the ODBC application program interface (API). The Driver Manager can be either the Microsoft Driver Manager or the unixODBC Driver Manager. Still using the ODBC API, the Driver Manager makes a call to the ODBC Driver. The ODBC Driver accesses the database over a network communications link using the database API. This figure shows an ODBC application accessing three separate databases.

Figure 25-1 Components of the ODBC Model

Description of Figure 25-1 follows
Description of "Figure 25-1 Components of the ODBC Model"
What Is the Oracle ODBC Driver

The Oracle ODBC Driver enables ODBC applications on Microsoft Windows, as well as UNIX platforms like Linux, Solaris, and IBM Advanced Interactive eXecutive (AIX) read and write access to Oracle® databases through the ODBC interface using Oracle Net Services software.

The Oracle ODBC Driver uses the Oracle Call Interface (OCI) client and server software to submit requests to and receive responses from the data source. Oracle Net Services communications protocol is used for communications between the OCI client and the Oracle server.

The Oracle ODBC Driver translates ODBC SQL syntax into syntax that can be used to access the data source. When the results are returned from the data source, the Oracle ODBC Driver translates them back to ODBC SQL syntax.

The following figure shows the Oracle ODBC Driver architecture as described in the preceding paragraphs.

Figure 25-2 Oracle ODBC Driver Architecture

Description of Figure 25-2 follows
Description of "Figure 25-2 Oracle ODBC Driver Architecture"

* The Oracle ODBC Resource data definition language (DLL) file (sqresxx.dll), where xx represents the language abbreviation, contains all pertinent language information; the default resource file used is sqresus.dll.

For more information about the OCI client and server software, refer to the OCI documentation.

About the author

Keith M. Curran

Keith Curran is the former CEO of BESI LLC, a global education provider.  He is the former director of development for the WSU Farmers Network and presently Director of Information Technology for the DIFM - CIG Oracle Cloud Tenancy at the University of Connecticut. 

UConn Agriculture

March 07, 2023

Integration with Oracle IDCS Complete!

The DIFM Ag Research Portal and Farmers Portal is now integrated with Oracle IDCS and there is self-registration for farmers and research scientists.   Both applications remain under development but the underlying scaffolding is built and being tested.

Ag Research Portal:  Is an end-user application under development designed for PI's and Stakeholders to access, review, edit migrated data residing in DIFM's Autonomous Data Warehouse in the Oracle Cloud.  

Farm Portal: Is an end-user application allowing farmers to register for OFPE Trials, upload necessary data for implementing those trials.  

Integrating user registration with IDCS and managing application & data access with IDCS satisfies essential requirements of Phase I of the software development plan.