JDBC is a flexible API that provide 4 different ways to connect to a data server.
These convert JDBC calls to direct network calls to the database servers without the need of any middle-tier component. Oracle recommends the use of these types of drivers whenever possible as these don’t require any particular operating-system-dependent libraries or middleware. They provide great flexibility for your architecture. Most popular databases on the market, such as Teradata, Oracle, Microsoft SQL Server, IBM DB2, Informix, Sybase, etc. propose Type 4 drivers.
These connect to a middle-tier server (middleware) using a Oracle Data Integrator Best Practices for a Data Warehouse Page 46 proprietary protocol. The middleware translates the calls to the final files or database servers and returns the results to the client program. Type 3 drivers are usually used to access database systems that were not designed in a Client/Server model, such as IMS, VSAM, ADABASE, etc.
These rely on operating system specific libraries provided by the database vendors. They convert JDBC calls to native library calls, and are therefore operating system dependant.
When using such drivers with a particular application, you need to pay attention to the operating system on which the application is installed. You should also make sure that all the client side libraries provided by the database vendor are properly installed on the system.
These provide a bridge via ODBC (Open Database Connectivity). ODBC binary libraries, and in many cases, database client libraries, must be loaded on the Agent machine. These drivers should be considered only when no other solution for accessing the data server is available.