concept of ODBC


What Is ODBC?
Open Database Connectivity (ODBC) provides a universal database connectivity application programming interface (API) that enables applications to access data in a wide range of proprietary databases. Based on the X/Open SQL Access Group's Call Level Interface (CLI) specification, ODBC is an open, vendor-neutral way to uniformly access data stored in different formats and database engines.
ODBC is the most widely used interface to relational data. It's also quite fast, but you pay for the fast access with complex application code.
The general characteristics of ODBC are:
  • Highly efficient performance.
  • Coding difficulty.
  • Reasonable memory requirements.
  • Compatibility with existing database technologies.
  • Portability across many operating system platforms.
  • A connection model that allows for different networks, security systems, and database options.
As the standard interface to relational data, your application can access a lot of data using ODBC. But ODBC does require that your data look like a relational database, so it's not always the best way to expose data. If you don't have a relational database, it can be very difficult to write an ODBC driver to expose your data because you basically have to write a relational engine on top of the existing data structure.
The following sections will acquaint you with ODBC data access technology.
How Does It Work?
Rather than having to know about each type of database, an application just talks to an ODBC driver that understands that format.
This means that, once the ODBC driver for a particular type of database is provided, any program can read databases in that format. If a new database format needs to be worked with, then all that is required is to install the relevant driver.
The figure above shows how ODBC fits in between an application and the database it is accessing.