Oracle Call Interface: Difference between revisions

Content deleted Content added
No edit summary
Removing link(s) to "User Programmatic Interface": Removing links to deleted page User Programmatic Interface.
 
(30 intermediate revisions by 25 users not shown)
Line 1:
{{Multiple issues|
In computing, the '''Oracle Call Interface''' '''(OCI)''' consists of a set of [[C_(programming_language)|C]]-language [[software]] [[application programming interface|APIs]] which provide a low-level interface to the [[Oracle database]].
{{refimprove|date=January 2014}}
{{notability|date=January 2014}}
}}
 
In computing, the '''Oracle Call Interface''' ('''(OCI)''') consists of a set of [[C_C (programming_languageprogramming language)|C]]-language [[software]] [[application programming interface|software APIs]] which provide a low-levelan interface to the [[Oracle database]].
==Overview==
 
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==
OCI was released with [[Oracle DatabaseCorporation]] version 6first inreleased 1988.OCI (under At thatthe time it was calledname HLI, the Host Language Interface.) with Oracle Database version 6 in 1988. As HLI (and subsequently OCI) wereoperated as wrappers for UPI, their original naming conventions wereclosely quiteresembled similarthose toof 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 were given better,acquired more descriptive names; <code>orol</code> became <code>OCITransRollback</code>. Subsequent improvements have been made in every version of OCI, including 11g. (released Oraclein [http://www2007).oracle.com/technology/tech/oci/index.html Oracle Corporation claims] that OCI is ''"So reliable that every SQL statement in the Oracle Database executes with OCI".''<ref>{{cite web |url=http://www.oracle.com/technology/tech/oci/index.html |url-status=dead |archive-url=https://web.archive.org/web/20040906134523/http://www.oracle.com/technology/tech/oci/index.html |archive-date=2004-09-06 |title=Oracle Call Interface}}</ref>
 
==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 ANTs Data Server]]{{Citation needed|date=September 2010}} (ADS), [[EnterpriseDB]], and the [[Linter SQL RDBMS]].
 
==OCI-based Librarieslibraries==
Several libraries are based on top of OCI, including:
 
* Oracle's [[JDBC driver|Type-II JDBC Driver]] (part-Java, part native)
* Oracle's enhanced [[C++]] [[Library (computing) | library]], [http://www.oracle.com/technology/tech/oci/occi/index.html '''[Oracle ''C++'' Call Interface''']] ('''OCCI'''), which provides an [[object orientationObject-orientated programming| object-oriented]] interface with the [[object-relational]] features of the Oracle database.
* Oracle's [[OLEDB|OLE DB]] Driver
* Oracle's [[ODBC]] Driver
Line 22 ⟶ 26:
* Microsoft's [[ODBC]] Driver for Oracle
* Easysoft's [[ODBC]]-Oracle Driver
* Trolltech's [[Qt (toolkit)| Qt C++ toolkit]] OCI driver (QOCI)
 
Due to the complexity of the OCI API, several easier-to-use OCI wrapper libraries also exist, such as:
 
* the open-source [http://www.poitschke.de/libsqlora8/ libsqlora8]library library(deprecated).
* the open-source [http://orclib.sourceforge.net/ [Ocilib|OCILIB]] library.
* the [[BSD license|Open BSD licensed]] Oracle Template Library OTL library.
 
== External linksReferences==
{{Reflist}}
* [http://www.orafaq.com/faqoci.htm Oracle Call Interface FAQ]
 
* [http://www.oracle.com/technology/tech/oci/index.html OCI Technology]
== External links ==
* {{Official website|http://www.oracle.com/technetwork/database/features/oci/index-090945.html}}
* [http://www.orafaq.com/faqoci.htmwiki/Oracle_Call_Interfaces Oracle Call Interface FAQ]
* [http://forums.oracle.com/forums/forum.jspa?forumID=67&start=0 Public OCI Support Forum (OTN)]
 
[[Category:Oracle software]]
 
[[bg:OCI]]
[[de:Oracle Call Interface]]