Oracle Call Interface: Difference between revisions

Content deleted Content added
No edit summary
refactoring
Line 1:
In computing, the '''''''Oracle Call Interface''' ('''(OCI)''') consists of a set of [[C_(programming_language)|C]]-language [[software]] [[application programming interface|APIs]] which provide an interface to the [[Oracle database]].
 
over--view
OCI offers a procedural [[API]] for not only performing certain database administration tasks (such as system startup and shutdown), but also for using [[PL/SQL]] or [[SQL]] to query, access, and manipulate data. The OCI library, based on Oracle's undocumented [[User Programmatic Interface]] (UPI), acts as an "[[interpreter (communication)|interpreter]]" between applications and the low-level database network protocol.
 
==History==
[[Oracle Corporation]] first released OCI (under the name HLI, the Host Language Interface) with Oracle Database version 6 in 1988. As HLI (and subsequently OCI) operated as wrappers for UPI, their original naming conventions closely resembled those of the UPI calls they were based upon. AnFor example is, the [[Rollback (data management) | rollback]] statement;: the call <code>upirol</code> in UPI became <code>orol</code> in OCI.
 
Later, in Oracle8 (released in 1997), OCI calls acquired more descriptive names; <code>orol</code> became <code>OCITransRollback</code>. Subsequent improvements have been made in every version of OCI, including 11g (released in 2007). Oracle Corporation [http://www.oracle.com/technology/tech/oci/index.html claims] that OCI is "So reliable that every SQL statement in the Oracle Database executes with OCI".
 
==Implementations==
OCI is so popular that, in addition to [[Oracle Corporation|Oracle]], several other vendors have implemented their own libraries compatible with the OCI API. To date, OCI-compatible libraries exist for the [[http://www.ants.com/ ANTs Data Server]]{{fact}} (ADS), [[EnterpriseDB]], and the [[Linter SQL RDBMS]].
 
==OCI-based Libraries==