Oracle Data Access Components (ODAC) is a library of components that provides native connectivity to Oracle from Delphi, C++Builder, Lazarus (and Free Pascal) for 32-bit and 64-bit Windows, macOS, and Linux platforms. The ODAC library is designed to help programmers develop faster, cleaner and more native Oracle database applications. ODAC, a high-performance and feature-rich Oracle connectivity solution, is an efficient native alternative to the Borland Database Engine (BDE) and standard dbExpress driver. It provides both possibility of connection to Oracle by means of native Oracle data access and direct access to Oracle without Oracle Client.

The ODAC library is actively developed and supported by the Devart Team. If you have questions about ODAC, email the developers at [email protected] or visit ODAC online at https://www.devart.com/odac/

Table of Contents

Advantages of ODAC Technology

ODAC is a direct database connectivity wrapper built specifically for the Oracle server. ODAC offers wide coverage of the Oracle feature set, supports both Client and Direct connection modes, and emphasizes optimized data access strategies.

Wide Coverage of Oracle Features

By providing access to the most advanced database functionality, ODAC allows developers to harness the full capabilities of the Oracle and optimize their database applications. ODAC stands out as the set of components with the widest support of Oracle functionality. It is the only component to support Oracle distributed transactions and implements support for controlling statement caching , OCI pooling , and Oracle Advanced Queuing. View the full list of supported Oracle features in Features.

Native Connection Options

ODAC offers two connection modes to the Oracle server: connection through the Oracle Call Interface and direct connection over TCP/IP. ODAC-based database applications are easy to deploy, do not require installation of other data provider layers (such as BDE), and tend to be faster than those that use standard data connectivity solutions. See the How does ODAC Work section.

Oracle Advanced Features Support

ODAC has extra components designed to simplify some tasks and support Oracle-specific technologies. Particularly, OraScript serves to execute series of SQL statements, OraLoader serves to load external data into Oracle databases, OraeAlerter and OraPipe transfer messages and data between connections or client applications, and so on. ODAC includes set of classes designed to work with Oracle Advanced Queuing technology.

Cross-Platform Solution for Delphi, C++Builder, and Lazarus

ODAC is a cross-platform solution for developing applications using various IDEs: RAD Studio, Delphi, C++Builder, Lazarus (and FPC) on Windows, macOS, and Linux, for both x86 and x64 platforms. ODAC also provides support for the FireMonkey platform, which allows you to develop visually spectacular high-performance native applications for Windows and macOS.

Optimized Code

The goal of ODAC is to enable developers to write efficient and flexible database applications. The ODAC library is implemented using optimized code and advanced data access algorithms. Component interfaces undergo comprehensive performance tests and are designed to help you write thin and efficient product data access layers. Find out more about using ODAC to optimize your database applications in Increasing Performance. To see the results of ODAC performance tests, consult the performance comparison section on the ODAC website.

Compatibility with Other Connectivity Methods

The ODAC interface retains compatibility with standard VCL data access components like BDE. Existing BDE-based applications can be easily migrated to ODAC and enhanced to take advantage of Oracle-specific features like alerts, pipes, and the direct-path interface. Project migration can be automated with the BDE Migration Wizard.  Find out more about Migration Wizard in Using Migration Wizard.

Development and Support

ODAC is an Oracle connectivity solution that has been actively developed and supported since 1998. ODAC comes with full documentation, demo projects, and fast (usually within one business day) technical support by the ODAC development team. Find out more about getting help or submit feedback and suggestions to the ODAC development team in Getting Support.

The description of the ODAC components is provided in the Component List.

Key Features

The full list of ODAC features can be found in Features.

How does ODAC work?

ODAC allows you to connect to Oracle in two ways: in the Direct mode over TCP/IP or in the Client mode using Oracle Client. The Direct mode can be enabled or disabled using the Direct property.

In the Direct mode, ODAC connects to Oracle directly via TCP/IP without using Oracle client software and enables you to build really thin database applications.

In Client mode, ODAC connects to Oracle through the Oracle Call Interface (OCI). OCI is an application programming interface that allows an application developer to use a third-generation language's native procedure or function calls to access the Oracle database server and control all phases of SQL statement execution. OCI is a library of standard database access and retrieval functions in the form of a dynamic-link library.

In contrast, the Borland Database Engine (BDE) uses several layers to access Oracle and requires additional data access software to be installed on client machines.

ODAC Connection

Connection Flow

BDE Connection


© 1997-2022 Devart. All Rights Reserved. Request Support DAC Forum Provide Feedback