What is ODBC?

Posted on DotNetBlocks See other posts from DotNetBlocks
Published on Sun, 07 Nov 2010 22:43:00 -0500 Indexed on 2010/12/06 16:59 UTC
Read the original article Hit count: 665

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

© DotNetBlocks or respective owner

Related posts about Application Architecture