Oracle Class Library Overview

Oracle Class Library (OCL) provides native connectivity to the Oracle database server. OCL uses Oracle Call Interface (OCI) directly. OCI is low-level native application programming interface to access to Oracle. Using OCI in Oracle Class Library allows to create lightweight and fast applications working with Oracle. Oracle Class Library encapsulates OCI calls in high-level classes that allows to hide the complexity of using OCI directly and keep perfomance and all abilities of native routines. With OCL you can use the power and flexibility of SQL in your application programs without any restrictions.

OCL contains classes to control connection, execute SQL statements, store and process result rows of queries and some common classes useful for developing database applications. All classes have intuitive, easy to use interface.

OCL is written with ANSI C++ and uses Standard C++ Library only that allows you to port your application easily to another platform.

Oracle Class Library is and can be easily used from Pro*C/C++, it provides the power of Oracle Call Interface.

Note: Oracle Class Library is open source since 26 May 2009.

Key features

Following are the main features of Oracle Class Library:

  • Design and develop highly customized database applications
  • Improve performance of data processing in your applications
  • Compile the same application for different platforms
  • Automatically convert between Oracle internal datatypes and high-level language datatypes
  • Fetch rows quickly
  • Cache result rows in memory to process them later
  • Use arrays as input and output program variables
  • Call stored procedures easily
  • Handle errors
  • Use LONG fields in the database
  • Monitoring query execution by dbMonitor

To sum it up, OCL is a full-featured tool that supports a professional approach to develop database applications.


OCL supports Oracle 11g, 10g, 9i, 8i, 8.0 and 7.3, including Personal and Lite. OCL includes library for Windows and Linux compatible with following compilers:

  • Microsoft Visual Studio 2008
  • Microsoft Visual C++ 2005
  • Microsoft Visual C++ 7.1, 7.0
  • Microsoft Visual C++ 6.0
  • Borland C++ Builder 6
  • Borland C++ Builder 5
  • Borland Kylix 3 for C++
  • GNU C++ compiler for Linux version 2.96