Oracle Provider for OLE DB in Oracle 10g

Features Overview

March 2004

 

 

Product Summary



The Oracle Provider for OLE DB gives Windows developers high performance and efficient access to Oracle databases. OLE DB is a Microsoft specification for a set of COM interfaces used to access and manipulate data. Developers can use the Oracle Provider for OLE DB 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). Developers can also code directly to the OLE DB interfaces using a language such as C or C++. The Oracle Provider for OLE DB is also fully compatible with OLE DB .NET, however the Oracle Data Provider for .NET (ODP.NET) is the best choice for .NET developers.

Because the Oracle OLE DB provider uses the latest Oracle10g 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 or the OLE DB-ODBC bridge. By adhering closely to the latest Microsoft OLE DB specification, the Oracle provider allows ADO and OLE DB .NET developers to take full advantage of OLE DB without having to sacrifice use of Oracle database server functionality.

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

Components



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 minimize the number of intermediaries data must travel through. 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 Oracle10g 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.

Features



The Oracle Provider for OLE DB supports the following features:

  • Fully compatible with OLE DB .NET
  • 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:
  • Oracle10g Grid enabled, allowing developers to take full advantage of grid support without changes being required to existing code
  • PL/SQL stored procedures/functions
    • Stored procedures/functions returning a rowset or multiple rowsets
    • LOB parameters with PL/SQL stored procedures/functions
  • LOBs (LONG, LONG RAW, BLOB, CLOB, NCLOB, and BFILE)
  • Binding NCHAR parameters with SQL statements
  • Oracle Password Expiration feature
  • Support for BINARY_FLOAT, BINARY_DOUBLE, TIMESTAMP and INTERVAL datatypes
  • Support for Multiple Oracle Homes

New Features in Oracle10g



Transparent Oracle 10g Grid Support

The Oracle Provider for OLE DB is grid enabled. To take full advantage of the power of Oracle 10g grid technology, no code changes are required! The Oracle Provider for OLE DB automatically recognizes when it is connected to a database grid and provides full support for Oracle grid features.

Support for New Oracle 10g Datatypes

The Oracle Provider for OLE DB includes significant support for new Oracle data types. BINARY_DOUBLE and BINARY_FLOAT data types represent single-precision and double-precision floating-point values that mostly conform to the IEEE754 standard for Floating Point Arithmetic. These new types enable faster arithmetic calculations and reduce storage requirements. They also enable you to implement published algorithms that specify IEEE behavior for arithmetic operations. Intense number crunching computations (whose scale and precision requests can be accommodated by the IEEE types) will run very substantially faster using these types than using NUMBER. Additionally, this feature enables cleaner integration with XML and Java environments because it provides similar numeric datatypes for those environments.

The Oracle Provider for OLE DB also provides support for the TIMESTAMP and INTERVAL datatypes. These represent improvements over the DATE data type with greater information included and a higher precision. The TIMESTAMP data types can provide time zone information and have precision up to the nanosecond. The two Oracle INTERVAL types provide year to month and day to nanosecond information when comparing timestamps.

Support for Multiple Oracle Homes

The Oracle Provider for OLE DB can be installed in a Multiple Oracle Home environment beginning with Oracle Database 10g. However, because the Oracle Provider for OLE DB is a COM component, only one instance can be active at a time. This means that a later OLE DB installation will render the previous one inactive. A client can toggle between installed OLE DB client releases by using Oracle Installer.

Conclusion



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 Oracle10g 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
U.S.A.

Worldwide Inquiries:
+1.650.506.7000
Fax +1.650.506.7200
http://www.oracle.com/

Copyright � Oracle Corporation 2004
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, Oracle8i, Oracle9i, Oracle10g, 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.