The use of JDBC Thin driver from a client application or from inside a server does not affect the code. This driver is useful in the following scenarios:Īccessing a remote database server from an Oracle Database instance acting as a middle tierĪccessing an Oracle Database session from inside another, such as from a Java stored procedure However, the JDBC server-side Thin driver runs inside Oracle Database and accesses a remote database or a different session on the same database for use with Java in the database. The JDBC server-side Thin driver offers the same functionality as the JDBC Thin driver that runs on the client-side. However, it is used for code that runs on the database server and needs to access another session either on the same server or on a remote server on any tier. It is functionally similar to the client-side Thin driver. OCI is an API that enables you to create applications that use the native procedures or function calls of a third-generation language to access Oracle Database and control all phases of the SQL statement processing. The JDBC OCI driver uses the OCI libraries, C-entry points, Oracle Net, core libraries, and other necessary files on the client computer where it is installed. These calls communicate with the database using Oracle Net Services.
The JDBC OCI driver, written in a combination of Java and C, converts JDBC invocations to calls to OCI, using native methods to call C-entry points. It supports all installed Oracle Net adapters, including interprocess communication (IPC), named pipes, TCP/IP, and Internetwork Packet Exchange/Sequenced Packet Exchange (IPX/SPX). It requires platform-specific OCI libraries. The JDBC OCI driver is a Type II driver used with Java applications. It is used on the client-side with an Oracle client installation. Oracle recommends you to use the Thin driver unless you have a feature that is supported only by a specific driver.