Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

What is ODBC?

DZone's Guide to

What is ODBC?

· Integration Zone ·
Free Resource

The State of API Integration 2018: Get Cloud Elements’ report for the most comprehensive breakdown of the API integration industry’s past, present, and future.

According to Microsoft, ODBC is a specification for a database API. This API is database and operating system agnostic due to the fact that the primary goal of the ODBC API is to be language-independent. Additionally, the open functions of the API are created by the manufactures of DBMS-specific drivers. Developers can use these exposed functions from within their own custom applications so that they can communicate with DBMS through the language-independent drivers.

ODBC Advantages

  • Multiple ODBC drivers for each DBSM

    • Example

      • Oracle’s ODBC Driver

      • Merant’s Oracle Driver
      • Microsoft’s Oracle Driver
  • ODBC Drivers are constantly updated for the latest data types
  • ODBC allows for more control when querying
  • ODBC allows for Isolation Levels

ODBC Disadvantages

  • ODBC Requires DSN
  • ODBC is the proxy between an application and a database
  • ODBC is dependent on third party drivers

ODBC Transaction Isolation Levels are related to and limited by the transaction management capabilities of the data source.

Transaction isolation levels:

  • READ UNCOMMITTED

    • Data is allowed to be read prior to the committing of a transaction.

  • READ COMMITTED

    • Data is only accessible after a transaction has completed

  • REPEATABLE READ

    • The same data value is read during the entire transaction

  • SERIALIZABLE

    • Transactions have no effect on other transactions

Your API is not enough. Learn why (and how) leading SaaS providers are turning their products into platforms with API integration in the ebook, Build Platforms, Not Products from Cloud Elements.

Topics:

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}