Oracle Provider for OLE DB in Oracle9i

Features Overview

October 2001



Product Summary

The Oracle Provider for OLE DB gives Windows developers high performance and efficient access to Oracle databases. Developers can use the Oracle OLE DB provider from any COM client, such as Visual Basic, Internet Information Server (IIS), and COM+/Microsoft Transaction Server (MTS), via Microsoft's ActiveX Data Objects (ADO). Programmers can use the Oracle provider directly through C/C++.

Because the Oracle OLE DB provider uses the latest Oracle9i technology, Oracle OLE DB offers data access optimizations and access to Oracle-specific database features, such as support for LOBs, PL/SQL stored procedures, and REF CURSORs. All these Oracle features and data access optimizations are generally not available in other third-party Oracle OLE DB providers. By adhering closely to the latest Microsoft OLE DB specification, the Oracle provider allows ADO developers to take full advantage of OLE DB without having to sacrifice use of Oracle database server functionality.

Oracle9i, Oracle8i, and Oracle8 database servers can all be used in conjunction with the Oracle9i OLE DB client software. The latest features in the Oracle9i OLE DB provider are highlighted in this paper.


The Oracle Provider for OLE DB is designed to improve data access performance and reliability for ADO developers. It uses direct Oracle Call Interface (OCI) connections, rather than utilizing ODBC as a bridge to OCI. The figure below demonstrates typical data access using ADO/OLE DB and the ADO/OLE DB-ODBC Bridge.

By using the provider, application developers keep the number of intermediaries data must travel through to a minimum. This allows data to go through the most direct path possible with OLE DB. At the same time, the Oracle OLE DB provider has been optimized because it uses Oracle9i OCI calls to maximize performance and expose the latest database features. In general, other third-party OLE DB providers written for Oracle may use older OCI calls, which can limit data access performance and feature set.

Oracle's OLE DB provider has been built to handle the high-volume, high-load of Internet application environments. The Oracle Provider for OLE DB leverages Oracle's proven Internet infrastructure to ensure a highly reliable, fast-performing and secure data access.


The Oracle Provider for OLE DB supports the following features:

  • Scrollable and updateable rowsets
  • ANSI SQL supported by Oracle and the ODBC SQL syntax
  • OS authentication, which allows Oracle to authorize users via the operating system's security mechanisms
  • Several schema rowsets
  • Updateable rowsets created using joins (available with the client cursor engine)
  • Transactions support
    • Local transactions supporting the ITransactionLocal interface
    • Distributed transactions through COM+/Microsoft Transaction Server (MTS)
  • Database links support
  • Unicode support
  • ADOX support
The Oracle Provider for OLE DB also supports the following Oracle-specific features:
  • PL/SQL stored procedures/functions
    • Stored procedures/functions returning a rowset or multiple rowsets
    • LOB parameters with PL/SQL stored procedures/functions
  • Binding NCHAR parameters with SQL statements
  • Oracle Password Expiration feature

New Features in Oracle9i

Full Unicode Support

As more applications become Internet-accessible, the need to support customers around the world becomes necessary. Applications must support these customers in their native languages without making the software development process cumbersome.

In Oracle9i, the Oracle OLE DB provider adds full UCS2 Unicode support to help Windows developers support their users globally. Developers can use Unicode in their ADO/OLE DB applications transparently, requiring no application code changes.

Enhanced Oracle Services for MTS

Many ADO/OLE DB users employ COM+/MTS for their transaction and object management. In previous releases, Oracle has integrated with COM+/MTS via the Oracle Services for MTS so that Windows users could use Microsoft's native transaction engine. With the Oracle9i release, the Oracle Services for MTS has been redesigned to remove the single point of failure and performance bottleneck present in the previous versions. The new Oracle OLE DB provider can use the redesigned Oracle Services for MTS without requiring Windows porgrammers to make modifications to their existing application code. Thus, ADO/OLE DB programs can now better handle high volume Internet application environments scalably and reliably.

For more information on the new Oracle Services for MTS architecture including upgrade information, visit the Oracle Services for MTS page.


The Oracle Provider for OLE DB provides high performance and reliable access to Oracle databases for ADO- or OLE DB-enabled applications. Current ADO and OLE DB programmers will able to easily migrate to the Oracle provider since it complies with the latest OLE DB and ADO specifications and allows access to Oracle-specific features. By using the Oracle9i Provider for OLE DB, Oracle users will find their applications more scalable and robust.








Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065

Worldwide Inquiries:
Fax +1.650.506.7200

Copyright © Oracle Corporation 2001
All Rights Reserved

This document is provided for informational purposes only, and the information herein is subject to change without notice. Please report any errors herein to Oracle Corporation. Oracle Corporation does not provide any warranties covering and specifically disclaims any liability in connection with this document.

Oracle, Oracle9i, and PL/SQL are a trademarks of Oracle Corporation.

All other company and product names mentioned are used for identification purposes only and may be trademarks of their respective owners.