Oracle C++ Call Interface


OOW 2012: What is New for C, and C++ developers in the latest Oracle database technology? See sessions where you can learn and practice http://db360.blogspot.com/2012/09/my-guide-for-oracle-openworld-2012.html

Oracle C++ Call Interface (OCCI) is a high-performance and comprehensive API to access the Oracle database. Based on Standard C++ and object-oriented paradigm, OCCI is designed for improved productivity and quality in developing Oracle database applications.

Introduced in Oracle9i, OCCI is being successfully used for client-server, middle-tier, and complex object modeling applications.

Features Summary

SQL and PL/SQL Support   OCCI provides complete SQL access support with DDL, DML, SELECT statements, transaction control, executing PL/SQL stored subprograms with parameters, REF cursors and Metadata access. All Oracle datatypes like Number, Date, Timestamp, Interval and LOB types: BFile, BLOB and CLOB are supported with easy to use classes.

Objects Access   OCCI is the natural interface for accessing Oracle object-relational features like object types, inheritance, relationships and collections. Objects are represented as C++ class instances in OCCI leading to seamless integration between the application and database. The navigational access method with the client object cache provides complete database transparency.

Scalability Features   For middle-tier Web applications, OCCI provides Connection pooling, Stateless connection pooling, and Statement caching features for optimal use of connections and resources.

Advanced Queuing (AQ)   OCCI AQ offers a high level, class-based interface to access Oracle Streams messaging capabilities. Applications can enqueue/dequeue messages of various types, consume messages asynchronously, and make use of publish-subscribe model for database events notifications.

Instant Client   The Instant Client feature makes it extremely easy and fast to deploy an OCCI based application by eliminating the need and disk space of a full Oracle Client install. Users just need to install a small sized archive containing all the Oracle dynamic libraries to run their OCCI applications.

What's new in OCCI in Oracle 11g R1 release :

  • Database Resident Connection Pooling(DRCP)
  • SecureFile LOBs, Compression, Encryption, and Deduplication
  • Client ResultSet cache
  • Runtime Connection Load balancing
  • Fault Diagnosability
  • Objects access performance improvements
What's new in OCCI in Oracle 10g R2 release :
  • Reading/Writing multiple LOBs with a single interface
  • Transparent Application Failover(TAF) notifications support
  • Batch DML exceptions
  • Interfaces to determine Client & Server versions
What's new in OCCI in Oracle 10g R1 release :
  • Advanced Queuing (AQ) interface
  • IEEE 754 floating point datatypes (BFLOAT and BDOUBLE)
  • Support for Unicode and Multibyte charactersets
  • Instant Client for easy deployment of OCCI applications
  • Stateless Connection pooling
  • Statement caching
  • Oracle XA library support

Whitepapers



Downloads



Documentation



Discussions