

In a Type 3 driver, a three-tier approach is used to access databases. The Oracle Call Interface (OCI) driver is an example of a Type 2 driver. If we change the Database, we have to change the native API, as it is specific to a database and they are mostly obsolete now, but you may realize some speed increase with a Type 2 driver, because it eliminates ODBC's overhead. The vendor-specific driver must be installed on each client machine. These drivers are typically provided by the database vendors and used in the same manner as the JDBC-ODBC Bridge. In a Type 2 driver, JDBC API calls are converted into native C/C++ API calls, which are unique to the database. The JDBC-ODBC Bridge that comes with JDK 1.2 is a good example of this kind of driver.

When Java first came out, this was a useful driver because most databases only supported ODBC access but now this type of driver is recommended only for experimental use or when no other alternative is available. Using ODBC, requires configuring on your system a Data Source Name (DSN) that represents the target database. In a Type 1 driver, a JDBC bridge is used to access ODBC drivers installed on each client machine. Sun has divided the implementation types into four categories, Types 1, 2, 3, and 4, which is explained below − Type 1 − JDBC-ODBC Bridge Driver JDBC driver implementations vary because of the wide variety of operating systems and hardware platforms in which Java operates. Third party vendors implements the interface in their database driver. The Java.sql package that ships with JDK, contains various classes with their behaviours defined and their actual implementaions are done in third-party drivers. JDBC drivers implement the defined interfaces in the JDBC API, for interacting with your database server.įor example, using JDBC drivers enable you to open database connections and to interact with it by sending SQL or database commands then receiving results with Java.
