The Open Database Connectivity (ODBC) interface by Microsoft allows applications to access data in database management systems (DBMS) using SQL as a standard for accessing the data. ODBC permits maximum interoperability, which means a single application can access different DBMS. Application end users can then add ODBC database drivers to link the application to their choice of DBMS.

The ODBC interface defines:

  • A library of ODBC function calls of two types:
    • Extended functions that support additional functionality, including scrollable cursors
    • Core functions that are based on the X/Open and SQL Access Group Call Level Interface specification
  • SQL syntax based on the X/Open and SQL Access Group SQL CAE specification (1992)
  • A standard set of error codes
  • A standard way to connect and logon to a DBMS
  • A standard representation for data types

The ODBC solution for accessing data led to ODBC database drivers, which are dynamic-link libraries on Windows and shared objects on UNIX and Linux. These drivers allow an application to gain access to one or more data sources. ODBC provides a standard interface to allow application developers and vendors of database drivers to exchange data between applications and data sources.