Expand description
§odpic-sys
The crate provides low-level Rust bindings to ODPI-C.
§Usage
Put this in your Cargo.toml:
[dependencies]
odpic-sys = "0.2.0"The following Cargo features are supported:
-
separate_blockingseparates functions which may be blocked by network round-trips.When the feature is enabled, functions whose column
Round-Trips?value in ODPI-C Function Round-Trips isYesorMaybeare moved from the top-level module to theblockingmodule.
§Note about doc comments
Doc comments in this crate are verbatim copies of ODPI-C doc. They are written for C language and may be inappropriate for Rust.
§Compile-time Requirements
See Compile-time Requirements.
§Relation between odpic-sys version and ODPI-C version
| odpic-sys version | ODPI-C version | RustTarget | note |
|---|---|---|---|
| 0.2.0 | 5.5.0 | 1.59 | (*1) |
| 0.1.1 | 5.4.1 | 1.59 | |
| 0.1.0 | 5.4.0 | 1.59 |
*1: Some constants’ types were changed from u32 to appropriate ones.
§License
Same with ODPI-C
- the Universal Permissive License v 1.0 or at your option, any later version; and/or
- the Apache License v 2.0.
§Copyrights
Copyrights of src/binding_*.rs files belong to respective owners.
The files were generated from ODPI-C header files and documents.
Modules§
- blocking
- functions which may be blocked by network-roundtrips
- dpi_
impl - This module provides constants in
dpiImpl.h.
Structs§
- dpiAccess
Token - This structure is used when creating connection pools and standalone connections using token based authentication. Oracle Client libraries must be 19.14 (or later), or 21.5 (or later).
- dpiAnnotation
- This structure is part of the structure
dpiDataTypeInfoand provides information about annotations associated with columns that are fetched from the database. Annotations are only available with Oracle Database 23ai (or later). Oracle Client libraries must also be 23.1 (or later). - dpiApp
Context - This structure is used for passing application context to the database during
the process of creating standalone connections. These values are ignored when
acquiring a connection from a session pool or when using DRCP (Database
Resident Connection Pooling). All values must be set to valid values prior to
being used in the
dpiConnCreateParamsstructure and must remain valid until the execution ofdpiConn_create()completes. Values set using this structure are available in logon triggers by using the sys_context() SQL function. - dpiBytes
- This structure is used for passing byte strings to and from the database in
the structure
dpiData. - dpiCommon
Create Params - This structure is used for creating session pools and standalone connections to
the database. All members are initialized to default values using the
dpiContext_initCommonCreateParams()function. - dpiConn
- Connection handles are used to represent connections to the database. These can
be standalone connections created by calling the function
dpiConn_create()or acquired from a session pool by calling the functiondpiPool_acquireConnection(). They can be closed by calling the functiondpiConn_close()or releasing the last reference to the connection by calling the functiondpiConn_release(). Connection handles are used to create all handles other than session pools and context handles. - dpiConn
Create Params - This structure is used for creating connections to the database, whether
standalone or acquired from a session pool. All members are initialized to
default values using the
dpiContext_initConnCreateParams()function. Care should be taken to ensure a copy of this structure exists only as long as needed to create the connection since it can contain a clear text copy of credentials used for connecting to the database. - dpiConn
Info - This structure is used for passing information about a connection from ODPI-C.
It is used by the function
dpiConn_getInfo(). - dpiContext
- Context handles are the top level handles created by the library and are used
for all error handling as well as creating pools and standalone connections to
the database. The first call to ODPI-C by any application must be
dpiContext_createWithParams()which will create the context as well as validate the version used by the application. Context handles are destroyed by using the functiondpiContext_destroy(). - dpiContext
Create Params - This structure is used for specifying parameters when creating an ODPI-C
context by calling
dpiContext_createWithParams(). - dpiData
- This structure is used for passing data to and from the database in variables and for getting and setting object attributes and collection values. The data that is stored in the structure will remain valid for differing durations depending on the source of the data.
- dpiData
Type Info - This structure is used for passing data type information from ODPI-C. It is
part of the structures
dpiObjectAttrInfo,dpiObjectTypeInfoanddpiQueryInfo. - dpiDeq
Options - Dequeue option handles are used to represent the options specified when
dequeuing messages using advanced queueing. They are created by calling the
function
dpiConn_newDeqOptions()and are destroyed by releasing the last reference by calling the functiondpiDeqOptions_release(). - dpiEncoding
Info - This structure is used for transferring encoding information from ODPI-C. All of
the information here remains valid as long as a reference is held to the
standalone connection (by calling
dpiConn_getEncodingInfo()) or session pool (by callingdpiPool_getEncodingInfo()) from which the information was taken. - dpiEnq
Options - Enqueue option handles are used to represent the options specified when
enqueuing messages using advanced queueing. They are created by calling the
function
dpiConn_newEnqOptions()and are destroyed by releasing the last reference by calling the functiondpiEnqOptions_release(). - dpiError
Info - This structure is used for transferring error information from ODPI-C. All of the strings referenced here may become invalid as soon as the next ODPI-C call is made.
- dpiIntervalDS
- This structure is used for passing interval (days to seconds) data to and from
the database in the structure
dpiData. - dpiIntervalYM
- This structure is used for passing interval (years to months) data to and from
the database in the structure
dpiData. - dpiJson
- JSON handles are used to represent JSON values stored in the database. They are
only available from Oracle Client and Database 20 and higher. They cannot be
created directly but are created implicitly when a variable of type
DPI_ORACLE_TYPE_JSON is created. They are destroyed when the last reference is
released by a call to the function
dpiJson_release(). - dpiJson
Array - This structure is used for passing JSON objects to and from the database.
- dpiJson
Node - This structure is used for passing JSON node data to and from the database in
the structure
dpiData. Nodes can consist of scalar values, objects, or arrays. - dpiJson
Object - This structure is used for passing JSON objects to and from the database.
- dpiLob
- LOB handles are used to represent large objects (CLOB, BLOB, NCLOB, BFILE).
Both persistent and temporary large objects can be represented. LOB handles can
be created by calling the function
dpiConn_newTempLob()or are created implicitly when a variable of type DPI_ORACLE_TYPE_CLOB, DPI_ORACLE_TYPE_NCLOB, DPI_ORACLE_TYPE_BLOB or DPI_ORACLE_TYPE_BFILE is created and are destroyed when the last reference is released by calling the functiondpiLob_release(). They are used for reading and writing data to the database in smaller pieces than is contained in the large object. - dpiMsg
Props - Message properties handles are used to represent the properties of messages
that are enqueued and dequeued using advanced queuing. They are created by
calling the function
dpiConn_newMsgProps()and are destroyed by releasing the last reference by calling the functiondpiMsgProps_release(). - dpiMsg
Recipient - This structure is used to set recipients for an AQ message.
- dpiObject
- Object handles are used to represent instances of the types created by the SQL
command CREATE OR REPLACE TYPE. They are created by calling the function
dpiObjectType_createObject()or calling the functiondpiObject_copy()or implicitly by creating a variable of the type DPI_ORACLE_TYPE_OBJECT. The are destroyed when the last reference is released by calling the functiondpiObject_release(). - dpiObject
Attr - Object attribute handles are used to represent the attributes of types such as
those created by the SQL command CREATE OR REPLACE TYPE. They are created by
calling the function
dpiObjectType_getAttributes()and are destroyed when the last reference is released by calling the functiondpiObjectAttr_release(). - dpiObject
Attr Info - This structure is used for passing information about an object type from ODPI-C.
It is used by the function
dpiObjectAttr_getInfo(). - dpiObject
Type - Object type handles are used to represent types such as those created by the
SQL command CREATE OR REPLACE TYPE. They are created using the function
dpiConn_getObjectType()or implicitly when fetching from a column containing objects by calling the functiondpiStmt_getQueryInfo(). Object types are also retrieved when used as attributes in another object by calling the functiondpiObjectAttr_getInfo()or as the element type of a collection by calling the functiondpiObjectType_getInfo(). They are destroyed when the last reference is released by calling the functiondpiObjectType_release(). - dpiObject
Type Info - This structure is used for passing information about an object type from ODPI-C.
It is used by the function
dpiObjectType_getInfo(). - dpiPool
- Pool handles are used to represent session pools. They are created using the
function
dpiPool_create()and can be closed by calling the functiondpiPool_close()or releasing the last reference to the pool by calling the functiondpiPool_release(). Pools can be used to create connections by calling the functiondpiPool_acquireConnection(). - dpiPool
Create Params - This structure is used for creating session pools, which can in turn be used to
create connections that are acquired from that session pool. All members are
initialized to default values using the
dpiContext_initPoolCreateParams()function. - dpiQuery
Info - This structure is used for passing query metadata from ODPI-C. It is populated
by the function
dpiStmt_getQueryInfo(). All values remain valid as long as a reference is held to the statement and the statement is not re-executed or closed. - dpiQueue
- Queue handles are used to represent Advanced Queueing (AQ) queues. They are
created by calling the function
dpiConn_newQueue()and are destroyed when the last reference is released by calling the functiondpiQueue_release(). - dpiRowid
- Rowid handles are used to represent the unique identifier of a row in the
database. They cannot be created or set directly but are created implicitly
when a variable of type DPI_ORACLE_TYPE_ROWID is created. They are destroyed
when the last reference is released by a call to the function
dpiRowid_release(). - dpiSharding
KeyColumn - This structure is used for passing sharding key column values to the database.
It is part of the structure
dpiConnCreateParams. - dpiSoda
Coll - SODA collection handles are used to represent SODA collections in the database.
They are created by calling one of the functions
dpiSodaDb_createCollection(),dpiSodaDb_openCollection()ordpiSodaCollCursor_getNext()and are destroyed when the last reference is released by calling the functiondpiSodaColl_release(). - dpiSoda
Coll Cursor - SODA collection cursor handles are used to represent SODA collection cursors.
They are created by calling the function
dpiSodaDb_getCollections()and are destroyed when the last reference is released by calling the functiondpiSodaCollCursor_release(). - dpiSoda
Db - SODA database handles are used to represent connections to the SODA database.
They are created by calling the function
dpiConn_getSodaDb(). They are destroyed when the last reference is released by callingdpiSodaDb_release(). - dpiSoda
Doc - SODA document handles are used to represent SODA documents in the database.
They are created by calling one of the functions
dpiSodaDb_createDocument(),dpiSodaDocCursor_getNext(),dpiSodaColl_findOne(),dpiSodaColl_getDataGuide(),dpiSodaColl_insertMany(),dpiSodaColl_insertOne(),dpiSodaColl_replaceOne()ordpiSodaColl_save()and are destroyed when the last reference is released by calling the functiondpiSodaDoc_release(). - dpiSoda
DocCursor - SODA document cursor handles are used to represent SODA document cursors.
They are created by calling the function
dpiSodaColl_find()and are destroyed when the last reference is released by calling the functiondpiSodaDocCursor_release(). - dpiSoda
Oper Options - This structure is used for passing search criteria to a number of SODA
operations. It is initialized using the function
dpiContext_initSodaOperOptions()and used by the functionsdpiSodaColl_find(),dpiSodaColl_findOne(),dpiSodaColl_getDocCount(),dpiSodaColl_remove()anddpiSodaColl_replaceOne(). - dpiStmt
- Statement handles are used to represent statements of all types (queries, DML,
DDL and PL/SQL). They are created by calling the function
dpiConn_prepareStmt()or the functiondpiSubscr_prepareStmt(). They are also created implicitly when a variable of type DPI_ORACLE_TYPE_STMT is created. Statement handles can be closed by calling the functiondpiStmt_close()or by releasing the last reference to the statement by calling the functiondpiStmt_release(). - dpiStmt
Info - This structure is used for passing information about a statement from ODPI-C. It
is used by the function
dpiStmt_getInfo(). - dpiString
List - This structure is used for receiving a list of strings from such functions as
dpiSodaDb_getCollectionNames()anddpiSodaColl_listIndexes(). The memory referenced by this structure should be freed by the functiondpiContext_freeStringList()and should not be manipulated directly. - dpiSubscr
- Subscription handles are used to represent subscriptions to events such as
continuous query notification and object change notification. They are created
by calling the function
dpiConn_subscribe()and are destroyed by calling the functiondpiConn_unsubscribe()or releasing the last reference by calling the functiondpiSubscr_release(). - dpiSubscr
Create Params - This structure is used for creating subscriptions to messages sent for object
change notification, query change notification or advanced queuing. All members
are initialized to default values using the
dpiContext_initSubscrCreateParams()function. - dpiSubscr
Message - This structure is used for passing messages sent by notifications to
subscriptions. It is the second parameter to the callback method specified in
the
dpiSubscrCreateParamsstructure. - dpiSubscr
Message Query - This structure is used for passing information on query change notification
events and is part of the
dpiSubscrMessagestructure. - dpiSubscr
Message Row - This structure is used for passing information on the rows that were changed and resulted in the notification message of which this structure is a part.
- dpiSubscr
Message Table - This structure is used for passing information on the tables that were changed and resulted in the notification message of which this structure is a part.
- dpiTimestamp
- This structure is used for passing timestamp data to and from the database in
the structure
dpiData. - dpiVar
- Variable handles are used to represent memory areas used for transferring data
to and from the database. They are created by calling the function
dpiConn_newVar(). They are destroyed when the last reference to the variable is released by calling the functiondpiVar_release(). They are bound to statements by calling the functiondpiStmt_bindByName()or the functiondpiStmt_bindByPos(). They can also be used for fetching data from the database by calling the functiondpiStmt_define(). - dpiVector
- Vector handles are used to represent vector values stored in the database. They
are only available from Oracle Client and Database 23.4 and higher. They can be
created explicitly by a call to
dpiConn_newVector()or implicitly when a variable of type DPI_ORACLE_TYPE_VECTOR is created. They are destroyed when the last reference is released by a call to the functiondpiVector_release(). - dpiVector
Info - This structure is used for providing or receiving information about a vector.
- dpiVersion
Info - This structure is used for returning Oracle version information about the
Oracle Client (
dpiContext_getClientVersion()) and Oracle Database (dpiConn_getServerVersion()). - dpiXid
- This structure is used for identifying a TPC (two-phase commit) transaction. It
is used by the TPC functions
dpiConn_tpcBegin(),dpiConn_tpcCommit(),dpiConn_tpcEnd(),dpiConn_tpcForget(),dpiConn_tpcPrepare()anddpiConn_tpcRollback().
Constants§
- DPI_
DEBUG_ LEVEL_ ERRORS - DPI_
DEBUG_ LEVEL_ FNS - DPI_
DEBUG_ LEVEL_ LOAD_ LIB - DPI_
DEBUG_ LEVEL_ MEM - DPI_
DEBUG_ LEVEL_ REFS - DPI_
DEBUG_ LEVEL_ SQL - DPI_
DEBUG_ LEVEL_ UNREPORTED_ ERRORS - DPI_
DEFAULT_ FETCH_ ARRAY_ SIZE - DPI_
DEFAULT_ PING_ INTERVAL - DPI_
DEFAULT_ PING_ TIMEOUT - DPI_
DEFAULT_ PREFETCH_ ROWS - DPI_
DEFAULT_ STMT_ CACHE_ SIZE - DPI_
DEQ_ NAV_ FIRST_ MSG - See
dpiDeqNavigation - DPI_
DEQ_ NAV_ NEXT_ MSG - See
dpiDeqNavigation - DPI_
DEQ_ NAV_ NEXT_ TRANSACTION - See
dpiDeqNavigation - DPI_
DEQ_ WAIT_ NO_ WAIT - DPI_
EVENT_ AQ - See
dpiEventType - DPI_
EVENT_ DEREG - See
dpiEventType - DPI_
EVENT_ NONE - See
dpiEventType - DPI_
EVENT_ OBJCHANGE - See
dpiEventType - DPI_
EVENT_ QUERYCHANGE - See
dpiEventType - DPI_
EVENT_ SHUTDOWN - See
dpiEventType - DPI_
EVENT_ SHUTDOWN_ ANY - See
dpiEventType - DPI_
EVENT_ STARTUP - See
dpiEventType - DPI_
FAILURE - DPI_
JSON_ OPT_ DATE_ AS_ DOUBLE - See
dpiJsonOptions - DPI_
JSON_ OPT_ DEFAULT - See
dpiJsonOptions - DPI_
JSON_ OPT_ NUMBER_ AS_ STRING - See
dpiJsonOptions - DPI_
MAJOR_ VERSION - DPI_
MAX_ INT64_ PRECISION - DPI_
MINOR_ VERSION - DPI_
MODE_ AUTH_ DEFAULT - See
dpiAuthMode - DPI_
MODE_ AUTH_ PRELIM - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSASM - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSBKP - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSDBA - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSDGD - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSKMT - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSOPER - See
dpiAuthMode - DPI_
MODE_ AUTH_ SYSRAC - See
dpiAuthMode - DPI_
MODE_ CONN_ CLOSE_ DEFAULT - See
dpiConnCloseMode - DPI_
MODE_ CONN_ CLOSE_ DROP - See
dpiConnCloseMode - DPI_
MODE_ CONN_ CLOSE_ RETAG - See
dpiConnCloseMode - DPI_
MODE_ CREATE_ DEFAULT - See
dpiCreateMode - DPI_
MODE_ CREATE_ EVENTS - See
dpiCreateMode - DPI_
MODE_ CREATE_ THREADED - See
dpiCreateMode - DPI_
MODE_ DEQ_ BROWSE - See
dpiDeqMode - DPI_
MODE_ DEQ_ LOCKED - See
dpiDeqMode - DPI_
MODE_ DEQ_ REMOVE - See
dpiDeqMode - DPI_
MODE_ DEQ_ REMOVE_ NO_ DATA - See
dpiDeqMode - DPI_
MODE_ EXEC_ ARRAY_ DML_ ROWCOUNTS - See
dpiExecMode - DPI_
MODE_ EXEC_ BATCH_ ERRORS - See
dpiExecMode - DPI_
MODE_ EXEC_ COMMIT_ ON_ SUCCESS - See
dpiExecMode - DPI_
MODE_ EXEC_ DEFAULT - See
dpiExecMode - DPI_
MODE_ EXEC_ DESCRIBE_ ONLY - See
dpiExecMode - DPI_
MODE_ EXEC_ PARSE_ ONLY - See
dpiExecMode - DPI_
MODE_ FETCH_ ABSOLUTE - See
dpiFetchMode - DPI_
MODE_ FETCH_ FIRST - See
dpiFetchMode - DPI_
MODE_ FETCH_ LAST - See
dpiFetchMode - DPI_
MODE_ FETCH_ NEXT - See
dpiFetchMode - DPI_
MODE_ FETCH_ PRIOR - See
dpiFetchMode - DPI_
MODE_ FETCH_ RELATIVE - See
dpiFetchMode - DPI_
MODE_ MSG_ BUFFERED - See
dpiMessageDeliveryMode - DPI_
MODE_ MSG_ PERSISTENT - See
dpiMessageDeliveryMode - DPI_
MODE_ MSG_ PERSISTENT_ OR_ BUFFERED - See
dpiMessageDeliveryMode - DPI_
MODE_ POOL_ CLOSE_ DEFAULT - See
dpiPoolCloseMode - DPI_
MODE_ POOL_ CLOSE_ FORCE - See
dpiPoolCloseMode - DPI_
MODE_ POOL_ GET_ FORCEGET - See
dpiPoolGetMode - DPI_
MODE_ POOL_ GET_ NOWAIT - See
dpiPoolGetMode - DPI_
MODE_ POOL_ GET_ TIMEDWAIT - See
dpiPoolGetMode - DPI_
MODE_ POOL_ GET_ WAIT - See
dpiPoolGetMode - DPI_
MODE_ SHUTDOWN_ ABORT - See
dpiShutdownMode - DPI_
MODE_ SHUTDOWN_ DEFAULT - See
dpiShutdownMode - DPI_
MODE_ SHUTDOWN_ FINAL - See
dpiShutdownMode - DPI_
MODE_ SHUTDOWN_ IMMEDIATE - See
dpiShutdownMode - DPI_
MODE_ SHUTDOWN_ TRANSACTIONAL - See
dpiShutdownMode - DPI_
MODE_ SHUTDOWN_ TRANSACTIONAL_ LOCAL - See
dpiShutdownMode - DPI_
MODE_ STARTUP_ DEFAULT - See
dpiStartupMode - DPI_
MODE_ STARTUP_ FORCE - See
dpiStartupMode - DPI_
MODE_ STARTUP_ RESTRICT - See
dpiStartupMode - DPI_
MSG_ STATE_ EXPIRED - See
dpiMessageState - DPI_
MSG_ STATE_ PROCESSED - See
dpiMessageState - DPI_
MSG_ STATE_ READY - See
dpiMessageState - DPI_
MSG_ STATE_ WAITING - See
dpiMessageState - DPI_
NATIVE_ TYPE_ BOOLEAN - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ BYTES - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ DOUBLE - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ FLOAT - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ INT64 - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ INTERVAL_ DS - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ INTERVAL_ YM - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ JSON - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ JSON_ ARRAY - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ JSON_ OBJECT - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ LOB - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ NULL - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ OBJECT - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ ROWID - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ STMT - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ TIMESTAMP - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ UINT64 - See
dpiNativeTypeNum - DPI_
NATIVE_ TYPE_ VECTOR - See
dpiNativeTypeNum - DPI_
OPCODE_ ALL_ OPS - See
dpiOpCode - DPI_
OPCODE_ ALL_ ROWS - See
dpiOpCode - DPI_
OPCODE_ ALTER - See
dpiOpCode - DPI_
OPCODE_ DELETE - See
dpiOpCode - DPI_
OPCODE_ DROP - See
dpiOpCode - DPI_
OPCODE_ INSERT - See
dpiOpCode - DPI_
OPCODE_ UNKNOWN - See
dpiOpCode - DPI_
OPCODE_ UPDATE - See
dpiOpCode - DPI_
ORACLE_ TYPE_ BFILE - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ BLOB - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ BOOLEAN - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ CHAR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ CLOB - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ DATE - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ INTERVAL_ DS - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ INTERVAL_ YM - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ JSON - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ JSON_ ARRAY - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ JSON_ ID - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ JSON_ OBJECT - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ LONG_ NVARCHAR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ LONG_ RAW - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ LONG_ VARCHAR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ MAX - DPI_
ORACLE_ TYPE_ NATIVE_ DOUBLE - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NATIVE_ FLOAT - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NATIVE_ INT - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NATIVE_ UINT - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NCHAR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NCLOB - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NONE - DPI_
ORACLE_ TYPE_ NUMBER - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ NVARCHAR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ OBJECT - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ RAW - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ ROWID - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ STMT - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ TIMESTAMP - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ TIMESTAMP_ LTZ - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ TIMESTAMP_ TZ - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ UROWID - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ VARCHAR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ VECTOR - See
dpiOracleTypeNum - DPI_
ORACLE_ TYPE_ XMLTYPE - See
dpiOracleTypeNum - DPI_
PATCH_ LEVEL - DPI_
PURITY_ DEFAULT - See
dpiPurity - DPI_
PURITY_ NEW - See
dpiPurity - DPI_
PURITY_ SELF - See
dpiPurity - DPI_
SERVER_ TYPE_ DEDICATED - See
dpiServerType - DPI_
SERVER_ TYPE_ POOLED - See
dpiServerType - DPI_
SERVER_ TYPE_ SHARED - See
dpiServerType - DPI_
SERVER_ TYPE_ UNKNOWN - See
dpiServerType - DPI_
SODA_ FLAGS_ ATOMIC_ COMMIT - See
dpiSodaFlags - DPI_
SODA_ FLAGS_ CREATE_ COLL_ MAP - See
dpiSodaFlags - DPI_
SODA_ FLAGS_ DEFAULT - See
dpiSodaFlags - DPI_
SODA_ FLAGS_ INDEX_ DROP_ FORCE - See
dpiSodaFlags - DPI_
STMT_ TYPE_ ALTER - See
dpiStatementType - DPI_
STMT_ TYPE_ BEGIN - See
dpiStatementType - DPI_
STMT_ TYPE_ CALL - See
dpiStatementType - DPI_
STMT_ TYPE_ COMMIT - See
dpiStatementType - DPI_
STMT_ TYPE_ CREATE - See
dpiStatementType - DPI_
STMT_ TYPE_ DECLARE - See
dpiStatementType - DPI_
STMT_ TYPE_ DELETE - See
dpiStatementType - DPI_
STMT_ TYPE_ DROP - See
dpiStatementType - DPI_
STMT_ TYPE_ EXPLAIN_ PLAN - See
dpiStatementType - DPI_
STMT_ TYPE_ INSERT - See
dpiStatementType - DPI_
STMT_ TYPE_ MERGE - See
dpiStatementType - DPI_
STMT_ TYPE_ ROLLBACK - See
dpiStatementType - DPI_
STMT_ TYPE_ SELECT - See
dpiStatementType - DPI_
STMT_ TYPE_ UNKNOWN - See
dpiStatementType - DPI_
STMT_ TYPE_ UPDATE - See
dpiStatementType - DPI_
SUBSCR_ GROUPING_ CLASS_ TIME - See
dpiSubscrGroupingClass - DPI_
SUBSCR_ GROUPING_ TYPE_ LAST - See
dpiSubscrGroupingType - DPI_
SUBSCR_ GROUPING_ TYPE_ SUMMARY - See
dpiSubscrGroupingType - DPI_
SUBSCR_ NAMESPACE_ AQ - See
dpiSubscrNamespace - DPI_
SUBSCR_ NAMESPACE_ DBCHANGE - See
dpiSubscrNamespace - DPI_
SUBSCR_ PROTO_ CALLBACK - See
dpiSubscrProtocol - DPI_
SUBSCR_ PROTO_ HTTP - See
dpiSubscrProtocol - DPI_
SUBSCR_ PROTO_ MAIL - See
dpiSubscrProtocol - DPI_
SUBSCR_ PROTO_ PLSQL - See
dpiSubscrProtocol - DPI_
SUBSCR_ QOS_ BEST_ EFFORT - See
dpiSubscrQOS - DPI_
SUBSCR_ QOS_ DEREG_ NFY - See
dpiSubscrQOS - DPI_
SUBSCR_ QOS_ QUERY - See
dpiSubscrQOS - DPI_
SUBSCR_ QOS_ RELIABLE - See
dpiSubscrQOS - DPI_
SUBSCR_ QOS_ ROWIDS - See
dpiSubscrQOS - DPI_
SUCCESS - DPI_
TPC_ BEGIN_ JOIN - See
dpiTpcBeginFlags - DPI_
TPC_ BEGIN_ NEW - See
dpiTpcBeginFlags - DPI_
TPC_ BEGIN_ PROMOTE - See
dpiTpcBeginFlags - DPI_
TPC_ BEGIN_ RESUME - See
dpiTpcBeginFlags - DPI_
TPC_ END_ NORMAL - See
dpiTpcEndFlags - DPI_
TPC_ END_ SUSPEND - See
dpiTpcEndFlags - DPI_
VECTOR_ FLAGS_ FLEXIBLE_ DIM - See
dpiVectorFlags - DPI_
VECTOR_ FLAGS_ SPARSE - See
dpiVectorFlags - DPI_
VECTOR_ FORMAT_ BINARY - See
dpiVectorFormat - DPI_
VECTOR_ FORMAT_ FLOA T32 - See
dpiVectorFormat - DPI_
VECTOR_ FORMAT_ FLOA T64 - See
dpiVectorFormat - DPI_
VECTOR_ FORMAT_ INT8 - See
dpiVectorFormat - DPI_
VISIBILITY_ IMMEDIATE - See
dpiVisibility - DPI_
VISIBILITY_ ON_ COMMIT - See
dpiVisibility
Functions§
- dpiConn_
addRef ⚠ - Adds a reference to the connection. This is intended for situations where a reference to the connection needs to be maintained independently of the reference returned when the connection was created.
- dpiConn_
break ⚠Execution - Performs an immediate (asynchronous) termination of any currently executing function on the server associated with the connection.
- dpiConn_
change ⚠Password - Changes the password of the specified user.
- dpiConn_
close ⚠ - Closes the connection and makes it unusable for further activity. Any open statements and LOBs associated with the connection will also be closed and made unusable for further activity.
- dpiConn_
commit ⚠ - Commits the current active transaction.
- dpiConn_
create ⚠ - Creates a standalone connection to a database or acquires a connection from a session pool and returns a reference to the connection.
- dpiConn_
deqObject ⚠ - Dequeues a message from a queue. This function is deprecated and will be
removed in version 4. One of the functions
dpiQueue_deqOne()ordpiQueue_deqMany()should be used instead. - dpiConn_
enqObject ⚠ - Enqueues a message to a queue. This function is deprecated and will be
removed in version 4. One of the functions
dpiQueue_enqOne()ordpiQueue_enqMany()should be used instead. - dpiConn_
getCall ⚠Timeout - Returns the current call timeout (in milliseconds) used for round-trips to
the database made with this connection. A value of 0 means that no timeouts
will take place. This value can be set using the function
dpiConn_setCallTimeout(). - dpiConn_
getCurrent ⚠Schema - Returns the current schema that is being used by the connection.
- dpiConn_
getDb ⚠Domain - Returns the Oracle Database Domain name associated with the connection.
This is the same value returned by the SQL expression
SELECT value FROM V$PARAMETER WHERE NAME = 'db_domain'. - dpiConn_
getDb ⚠Name - Returns the Oracle Database name associated with the connection. This is
the same value returned by the SQL expression
SELECT NAME FROM V$DATABASE. - dpiConn_
getEdition ⚠ - Returns the edition that is being used by the connection.
- dpiConn_
getEncoding ⚠Info - Returns the encoding information used by the connection. This will be equivalent to the values passed when the standalone connection or session pool was created, or the values retrieved from the environment variables NLS_LANG and NLS_NCHAR.
- dpiConn_
getExternal ⚠Name - Returns the external name that is being used by the connection. This value is used when logging distributed transactions.
- dpiConn_
getHandle ⚠ - Returns the OCI service context handle in use by the connection.
- dpiConn_
getInfo ⚠ - Returns information about the connection.
- dpiConn_
getInstance ⚠Name - Returns the Oracle Database instance name associated with the connection.
This is the same value returned by the SQL expression
sys_context('userenv', 'instance_name'). - dpiConn_
getInternal ⚠Name - Returns the internal name that is being used by the connection. This value is used when logging distributed transactions.
- dpiConn_
getIs ⚠Healthy - Checks if a connection is usable. Connections may become unusable in several cases, such as if the network socket is broken, if an Oracle error indicates the connection is unusable or after receiving a planned down notification from the database.
- dpiConn_
getLTXID ⚠ - Returns the logical transaction id for the connection. This value is used in Transaction Guard to determine if the last failed call was completed and if the transaction was committed using the procedure call dbms_app_cont.get_ltxid_outcome().
- dpiConn_
getMax ⚠Open Cursors - Returns the maximum number of cursors that can be opened. This is the same
value returned by the SQL expression
SELECT VALUE FROM V$PARAMETER WHERE NAME = 'open_cursors'. - dpiConn_
getObject ⚠Type - Looks up an object type by name in the database and returns a reference to it. The reference should be released as soon as it is no longer needed.
- dpiConn_
getOci ⚠Attr - Returns the value of an OCI attribute. This is intended solely for testing attributes that are not otherwise supported by ODPI-C and should not be used for any other purpose. Use only as directed by Oracle.
- dpiConn_
getServer ⚠Version - Returns the version information of the Oracle Database to which the connection has been made.
- dpiConn_
getService ⚠Name - Returns the Oracle Database service name associated with the connection.
This is the same value returned by the SQL expression
SELECT SYS_CONTEXT('USERENV', 'SERVICE_NAME') FROM DUAL. - dpiConn_
getSoda ⚠Db - Return a reference to a SODA database which can be used to create, open and drop collections. The connection that is passed should remain open while SODA operations are being performed. If the connection is closed an error will take place when the next SODA operation is attempted.
- dpiConn_
getStmt ⚠Cache Size - Returns the size of the statement cache, in number of statements.
- dpiConn_
getTransaction ⚠InProgress - Returns whether a transaction is in progress or not.
- dpiConn_
newDeq ⚠Options - Returns a reference to a new set of dequeue options, used in dequeuing
objects from a queue. The reference should be released as soon as it is no
longer needed. This function is deprecated and will be removed in version
4. The function
dpiQueue_getDeqOptions()should be used instead. - dpiConn_
newEnq ⚠Options - Returns a reference to a new set of enqueue options, used in enqueuing
objects into a queue. The reference should be released as soon as it is no
longer needed. This function is deprecated and will be removed in version
4. The function
dpiQueue_getEnqOptions()should be used instead. - dpiConn_
newJson ⚠ - Returns a reference to a new JSON object. This object can be used as the
payload in a message enqueued in a JSON queue, or as the value for a
variable. The reference should be released by calling
dpiJson_release()as soon as it is no longer needed. - dpiConn_
newJson ⚠Queue - Returns a reference to a new queue which enqueues and dequeues messages
from Advanced Queueing (AQ) with a JSON payload. The reference should be
released by calling
dpiQueue_release()as soon as it is no longer needed. For queues with RAW or Database Object payloads, use the methoddpiConn_newQueue()instead. - dpiConn_
newMsg ⚠Props - Returns a reference to a new set of message properties, used in enqueuing and dequeuing objects in a queue. The reference should be released as soon as it is no longer needed.
- dpiConn_
newQueue ⚠ - Returns a reference to a new queue which may be used to enqueue and dequeue
messages from Advanced Queuing (AQ) queues. The reference should be
released by calling
dpiQueue_release()as soon as it is no longer needed. - dpiConn_
newTemp ⚠Lob - Returns a reference to a new temporary LOB which may subsequently be written and bound to a statement. The reference should be released as soon as it is no longer needed.
- dpiConn_
newVar ⚠ - Returns a reference to a new variable which can be used for binding data to a statement or providing a buffer for querying data from the database. The reference should be released as soon as it is no longer needed.
- dpiConn_
newVector ⚠ - Returns a reference to a new vector object. This object can be used as the
value for a variable. The reference should be released by calling
dpiVector_release()as soon as it is no longer needed. - dpiConn_
ping ⚠ - Pings the database to determine if a connection is usable.
- dpiConn_
prepare ⚠Stmt - Returns a reference to a statement prepared for execution. The reference should be released as soon as it is no longer needed.
- dpiConn_
release ⚠ - Releases a reference to the connection. A count of the references to the
connection is maintained and when this count reaches zero, the memory
associated with the connection is freed and the connection is closed or
released back to the session pool if that has not already taken place using
the function
dpiConn_close(). - dpiConn_
rollback ⚠ - Rolls back the current active transaction.
- dpiConn_
setAction ⚠ - Sets the action attribute on the connection. This is one of the end-to-end tracing attributes that can be tracked in database views, shown in audit trails and seen in tools such as Enterprise Manager.
- dpiConn_
setCall ⚠Timeout - Sets the call timeout (in milliseconds) to be used for round-trips to the
database made with this connection. A value of 0 means that no timeouts
will take place. The current value can be acquired using the function
dpiConn_getCallTimeout(). - dpiConn_
setClient ⚠Identifier - Sets the client identifier attribute on the connection. This is one of the end-to-end tracing attributes that can be tracked in database views, shown in audit trails and seen in tools such as Enterprise Manager.
- dpiConn_
setClient ⚠Info - Sets the client info attribute on the connection. This is one of the end-to-end tracing attributes that can be tracked in database views, shown in audit trails and seen in tools such as Enterprise Manager.
- dpiConn_
setCurrent ⚠Schema - Sets the current schema to be used on the connection. This has the same effect as the SQL statement ALTER SESSION SET CURRENT_SCHEMA. The value be changed when the next call requiring a round trip to the server is performed. If the new schema name does not exist, the same error is returned as when the alter session statement is executed. The new schema name is placed before database objects in statement that you execute that do not already have a schema.
- dpiConn_
setDb ⚠Op - Sets the database operation attribute on the connection. This is one of the end-to-end tracing attributes that can be tracked in database views, shown in audit trails and seen in tools such as Enterprise Manager.
- dpiConn_
setEcontext ⚠Id - Sets the execution context id attribute on the connection. This is one of the end-to-end tracing attributes that can be tracked in database views, shown in audit trails and seen in tools such as Enterprise Manager.
- dpiConn_
setExternal ⚠Name - Sets the external name that is being used by the connection. This value is used when logging distributed transactions.
- dpiConn_
setInternal ⚠Name - Sets the internal name that is being used by the connection. This value is used when logging distributed transactions.
- dpiConn_
setModule ⚠ - Sets the module attribute on the connection. This is one of the end-to-end tracing attributes that can be tracked in database views, shown in audit trails and seen in tools such as Enterprise Manager.
- dpiConn_
setOci ⚠Attr - Sets the value of an OCI attribute. This is intended solely for testing attributes that are not otherwise supported by ODPI-C and should not be used for any other purpose. Use only as directed by Oracle.
- dpiConn_
setStmt ⚠Cache Size - Sets the size of the statement cache.
- dpiConn_
shutdown ⚠Database - Shuts down the database. This function must be called twice for the database to be shut down successfully. After calling this function the first time, the SQL statements “alter database close normal” and “alter database dismount” must be executed. Once that is complete this function should be called again with the mode DPI_MODE_SHUTDOWN_FINAL in order to complete the orderly shutdown of the database.
- dpiConn_
startup ⚠Database - Starts up a database.
- dpiConn_
startup ⚠Database With Pfile - Starts up a database with a parameter file (PFILE).
- dpiConn_
subscribe ⚠ - Returns a reference to a subscription which is used for requesting notifications of events that take place in the database. Events that are supported are changes on tables or queries (continuous query notification) and the availability of messages to dequeue (advanced queuing). The reference should be released as soon as it is no longer needed.
- dpiConn_
tpcBegin ⚠ - Begins a new TPC (two-phase commit) transaction with the given transaction id (XID).
- dpiConn_
tpcCommit ⚠ - Commits a TPC (two-phase commit) transaction.
- dpiConn_
tpcEnd ⚠ - Ends a TPC (two-phase commit) transaction with the given transaction id (XID).
- dpiConn_
tpcForget ⚠ - Forgets a TPC (two-phase commit) transaction.
- dpiConn_
tpcPrepare ⚠ - Prepares a TPC (two-phase commit) transaction for commit. This function
should only be called after
dpiConn_tpcBegin()is called and beforedpiConn_tpcCommit()ordpiConn_commit()is called. - dpiConn_
tpcRollback ⚠ - Rolls back a TPC (two-phase commit) transaction.
- dpiConn_
unsubscribe ⚠ - Unsubscribes from the events that were earlier subscribed to via the
function
dpiConn_subscribe(). Once this function completes successfully no further notifications will be sent for this subscription. Note that this method does not generate a notification either. - dpiContext_
create ⚠With Params - Creates a new context for interaction with the library. This is the first function that must be called and it must have completed successfully before any other functions can be called, including in other threads.
- dpiContext_
destroy ⚠ - Destroys the context that was earlier created with the function
dpiContext_createWithParams(). - dpiContext_
free ⚠String List - Frees the memory associated with the string list allocated by a call to
one of the functions
dpiSodaDb_getCollectionNames()ordpiSodaColl_listIndexes(). This function should not be called without first calling one of those functions first. - dpiContext_
getClient ⚠Version - Return information about the version of the Oracle Client that is being used.
- dpiContext_
getError ⚠ - Returns information for the last error or warning that was raised by the library. This function must be called with the same thread that generated the error or warning. It must also be called before any other ODPI-C library calls are made on the calling thread since the error/warning information specific to that thread is cleared at the start of every ODPI-C function call.
- dpiContext_
init ⚠Common Create Params - Initializes the
dpiCommonCreateParamsstructure to default values. - dpiContext_
init ⚠Conn Create Params - Initializes the
dpiConnCreateParamsstructure to default values. - dpiContext_
init ⚠Pool Create Params - Initializes the
dpiPoolCreateParamsstructure to default values. - dpiContext_
init ⚠Soda Oper Options - Initializes the
dpiSodaOperOptionsstructure to default values. - dpiContext_
init ⚠Subscr Create Params - Initializes the
dpiSubscrCreateParamsstructure to default values. - dpiData_
getBool ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_BOOLEAN.
- dpiData_
getBytes ⚠ - Returns a pointer to the value of the data when the native type is DPI_NATIVE_TYPE_BYTES.
- dpiData_
getDouble ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_DOUBLE.
- dpiData_
getFloat ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_FLOAT.
- dpiData_
getInt64 ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_INT64.
- dpiData_
getIntervalDS ⚠ - Returns a pointer to the value of the data when the native type is DPI_NATIVE_TYPE_INTERVAL_DS.
- dpiData_
getIntervalYM ⚠ - Returns a pointer to the value of the data when the native type is DPI_NATIVE_TYPE_INTERVAL_YM.
- dpiData_
getIs ⚠Null - Returns whether the data refers to a null value (1) or not (0).
- dpiData_
getJson ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_JSON.
- dpiData_
getJson ⚠Array - Returns the value of the data when the native type is DPI_NATIVE_TYPE_JSON_ARRAY.
- dpiData_
getJson ⚠Object - Returns the value of the data when the native type is DPI_NATIVE_TYPE_JSON_OBJECT.
- dpiData_
getLOB ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_LOB.
- dpiData_
getObject ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_OBJECT.
- dpiData_
getStmt ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_STMT.
- dpiData_
getTimestamp ⚠ - Returns a pointer to the value of the data when the native type is DPI_NATIVE_TYPE_TIMESTAMP.
- dpiData_
getUint64 ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_UINT64.
- dpiData_
getVector ⚠ - Returns the value of the data when the native type is DPI_NATIVE_TYPE_VECTOR.
- dpiData_
setBool ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_BOOLEAN.
- dpiData_
setBytes ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_BYTES.
Do not use this function when setting data for variables. Instead, use
the function
dpiVar_setFromBytes(). - dpiData_
setDouble ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_DOUBLE.
- dpiData_
setFloat ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_FLOAT.
- dpiData_
setInt64 ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_INT64.
- dpiData_
setIntervalDS ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_INTERVAL_DS.
- dpiData_
setIntervalYM ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_INTERVAL_YM.
- dpiData_
setLOB ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_LOB.
Do not use this function when setting data for variables. Instead, use
the function
dpiVar_setFromLob(). - dpiData_
setNull ⚠ - Sets the value of the data to be the null value.
- dpiData_
setObject ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_OBJECT.
Do not use this function when setting data for variables. Instead, use
the function
dpiVar_setFromObject(). - dpiData_
setStmt ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_STMT.
Do not use this function when setting data for variables. Instead, use
the function
dpiVar_setFromStmt(). - dpiData_
setTimestamp ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_TIMESTAMP.
- dpiData_
setUint64 ⚠ - Sets the value of the data when the native type is DPI_NATIVE_TYPE_UINT64.
- dpiDeq
Options_ ⚠addRef - Adds a reference to the dequeue options. This is intended for situations where a reference to the dequeue options needs to be maintained independently of the reference returned when the handle was created.
- dpiDeq
Options_ ⚠getCondition - Returns the condition that must be satisfied in order for a message to be
dequeued. See function
dpiDeqOptions_setCondition()for more information. - dpiDeq
Options_ ⚠getConsumer Name - Returns the name of the consumer that is dequeuing messages. See function
dpiDeqOptions_setConsumerName()for more information. - dpiDeq
Options_ ⚠getCorrelation - Returns the correlation of the message to be dequeued. See function
dpiDeqOptions_setCorrelation()for more information. - dpiDeq
Options_ ⚠getMode - Returns the mode that is to be used when dequeuing messages.
- dpiDeq
Options_ ⚠getMsg Id - Returns the identifier of the specific message that is to be dequeued.
- dpiDeq
Options_ ⚠getNavigation - Returns the position of the message that is to be dequeued.
- dpiDeq
Options_ ⚠getTransformation - Returns the transformation of the message to be dequeued. See function
dpiDeqOptions_setTransformation()for more information. - dpiDeq
Options_ ⚠getVisibility - Returns whether the message being dequeued is part of the current transaction or constitutes a transaction on its own.
- dpiDeq
Options_ ⚠getWait - Returns the time to wait, in seconds, for a message matching the search
criteria. See function
dpiDeqOptions_setWait()for more information. - dpiDeq
Options_ ⚠release - Releases a reference to the dequeue options. A count of the references to the dequeue options is maintained and when this count reaches zero, the memory associated with the options is freed.
- dpiDeq
Options_ ⚠setCondition - Sets the condition which must be true for messages to be dequeued. The condition must be a valid boolean expression similar to the where clause of a SQL query. The expression can include conditions on message properties, user data properties and PL/SQL or SQL functions. User data properties must be prefixed with tab.user_data as a qualifier to indicate the specific column of the queue table that stores the message payload.
- dpiDeq
Options_ ⚠setConsumer Name - Sets the name of the consumer which will be dequeuing messages. This value should only be set if the queue is set up for multiple consumers.
- dpiDeq
Options_ ⚠setCorrelation - Sets the correlation of the message to be dequeued. Special pattern matching characters such as the percent sign (%) and the underscore (_) can be used. If multiple messages satisfy the pattern, the order of dequeuing is undetermined.
- dpiDeq
Options_ ⚠setDelivery Mode - Sets the message delivery mode that is to be used when dequeuing messages.
- dpiDeq
Options_ ⚠setMode - Sets the mode that is to be used when dequeuing messages.
- dpiDeq
Options_ ⚠setMsg Id - Sets the identifier of the specific message to be dequeued.
- dpiDeq
Options_ ⚠setNavigation - Sets the position in the queue of the message that is to be dequeued.
- dpiDeq
Options_ ⚠setTransformation - Sets the transformation of the message to be dequeued. The transformation is applied after the message is dequeued but before it is returned to the application. It must be created using DBMS_TRANSFORM.
- dpiDeq
Options_ ⚠setVisibility - Sets whether the message being dequeued is part of the current transaction or constitutes a transaction on its own.
- dpiDeq
Options_ ⚠setWait - Set the time to wait, in seconds, for a message matching the search criteria.
- dpiEnq
Options_ ⚠addRef - Adds a reference to the enqueue options. This is intended for situations where a reference to the enqueue options needs to be maintained independently of the reference returned when the handle was created.
- dpiEnq
Options_ ⚠getTransformation - Returns the transformation of the message to be enqueued. See function
dpiEnqOptions_setTransformation()for more information. - dpiEnq
Options_ ⚠getVisibility - Returns whether the message being enqueued is part of the current transaction or constitutes a transaction on its own.
- dpiEnq
Options_ ⚠release - Releases a reference to the enqueue options. A count of the references to the enqueue options is maintained and when this count reaches zero, the memory associated with the options is freed.
- dpiEnq
Options_ ⚠setDelivery Mode - Sets the message delivery mode that is to be used when enqueuing messages.
- dpiEnq
Options_ ⚠setTransformation - Sets the transformation of the message to be enqueued. The transformation is applied after the message is enqueued but before it is returned to the application. It must be created using DBMS_TRANSFORM.
- dpiEnq
Options_ ⚠setVisibility - Sets whether the message being enqueued is part of the current transaction or constitutes a transaction on its own.
- dpiJson_
addRef ⚠ - Adds a reference to the JSON value. This is intended for situations where a reference to the JSON value needs to be maintained independently of the reference returned when the JSON value was created.
- dpiJson_
getValue ⚠ - Returns the top node of a hierarchy of nodes containing the data stored in the JSON value.
- dpiJson_
release ⚠ - Releases a reference to the JSON value. A count of the references to the JSON value is maintained and when this count reaches zero, the memory associated with the JSON value is freed.
- dpiJson_
setFrom ⚠Text - Sets the JSON value from the JSON string passed as a byte string.
- dpiJson_
setValue ⚠ - Sets the JSON value to the data found in the hierarchy of nodes pointed to by the top level node.
- dpiLob_
addRef ⚠ - Adds a reference to the LOB. This is intended for situations where a reference to the LOB needs to be maintained independently of the reference returned when the LOB was created.
- dpiLob_
close ⚠ - Closes the LOB and makes it unusable for further operations immediately, rather than when the reference count reaches zero.
- dpiLob_
close ⚠Resource - Closes the LOB resource. This should be done when a batch of writes has
been completed so that the indexes associated with the LOB can be updated.
It should only be performed if a call to function
dpiLob_openResource()has been performed. - dpiLob_
copy ⚠ - Creates an independent copy of a LOB and returns a reference to the newly created LOB. This reference should be released as soon as it is no longer needed.
- dpiLob_
getBuffer ⚠Size - Returns the size of the buffer needed to hold the number of characters specified for a buffer of the type associated with the LOB. If the LOB does not refer to a character LOB the value is returned unchanged.
- dpiLob_
getChunk ⚠Size - Returns the chunk size, in bytes, of the internal LOB. Reading and writing to the LOB in multiples of this size will improve performance.
- dpiLob_
getDirectory ⚠AndFile Name - Returns the directory alias name and file name for a BFILE type LOB.
- dpiLob_
getFile ⚠Exists - Returns a boolean value indicating if the file referenced by the BFILE type LOB exists (1) or not (0).
- dpiLob_
getIs ⚠Resource Open - Returns a boolean value indicating if the LOB resource has been opened by
making a call to the function
dpiLob_openResource()(1) or not (0). - dpiLob_
getSize ⚠ - Returns the size of the data stored in the LOB. For character LOBs the size is in characters; for binary LOBs the size is in bytes.
- dpiLob_
getType ⚠ - Returns the type of the LOB.
- dpiLob_
open ⚠Resource - Opens the LOB resource for writing. This will improve performance when
writing to the LOB in chunks and there are functional or extensible indexes
associated with the LOB. If this function is not called, the LOB resource
will be opened and closed for each write that is performed. A call to the
function
dpiLob_closeResource()should be done before performing a call to the functiondpiConn_commit(). - dpiLob_
read ⚠Bytes - Reads data from the LOB at the specified offset into the provided buffer.
- dpiLob_
release ⚠ - Releases a reference to the LOB. A count of the references to the LOB is
maintained and when this count reaches zero, the memory associated with the
LOB is freed. The LOB is also closed unless that has already taken place
using the function
dpiLob_close(). - dpiLob_
setDirectory ⚠AndFile Name - Sets the directory alias name and file name for a BFILE type LOB.
- dpiLob_
setFrom ⚠Bytes - Replaces all of the data in the LOB with the contents of the provided buffer. The LOB will first be cleared and then the provided data will be written.
- dpiLob_
trim ⚠ - Trims the data in the LOB so that it only contains the specified amount of data.
- dpiLob_
write ⚠Bytes - Write data to the LOB at the specified offset using the provided buffer as
the source. If multiple calls to this function are planned, the LOB should
first be opened using the function
dpiLob_openResource(). - dpiMsg
Props_ ⚠addRef - Adds a reference to the message properties. This is intended for situations where a reference to the message properties needs to be maintained independently of the reference returned when the handle was created.
- dpiMsg
Props_ ⚠getCorrelation - Returns the correlation supplied by the producer when the message was enqueued.
- dpiMsg
Props_ ⚠getDelay - Returns the number of seconds the enqueued message will be delayed.
- dpiMsg
Props_ ⚠getDelivery Mode - Returns the mode that was used to deliver the message.
- dpiMsg
Props_ ⚠getEnq Time - Returns the time that the message was enqueued.
- dpiMsg
Props_ ⚠getExceptionQ - Returns the name of the queue to which the message is moved if it cannot be
processed successfully. See function
dpiMsgProps_setExceptionQ()for more information. - dpiMsg
Props_ ⚠getExpiration - Returns the number of seconds the message is available to be dequeued.
See function
dpiMsgProps_setExpiration()for more information. - dpiMsg
Props_ ⚠getMsg Id - Returns the id of the message in the queue that generated this message. No value is available until the message has been enqueued or dequeued.
- dpiMsg
Props_ ⚠getNum Attempts - Returns the number of attempts that have been made to dequeue a message.
- dpiMsg
Props_ ⚠getOriginal MsgId - Returns the id of the message in the last queue that generated this
message. See function
dpiMsgProps_setOriginalMsgId()for more information. - dpiMsg
Props_ ⚠getPayload - Returns the payload associated with the message properties. The payload can
either be an object or an arbitrary series of bytes and is available after
a call to
dpiQueue_deqOne()ordpiQueue_deqMany(). - dpiMsg
Props_ ⚠getPayload Json - Returns the payload associated with the message properties, The payload
must be a JSON object and is available after the call to
dpiQueue_deqOne()ordpiQueue_deqMany(); otherwise, the value NULL will be returned. - dpiMsg
Props_ ⚠getPriority - Returns the priority assigned to the message. See function
dpiMsgProps_setPriority()for more information. - dpiMsg
Props_ ⚠getState - Returns the state of the message at the time of dequeue.
- dpiMsg
Props_ ⚠release - Releases a reference to the message properties. A count of the references to the message properties is maintained and when this count reaches zero, the memory associated with the properties is freed.
- dpiMsg
Props_ ⚠setCorrelation - Sets the correlation of the message to be dequeued. Special pattern matching characters such as the percent sign (%) and the underscore (_) can be used. If multiple messages satisfy the pattern, the order of dequeuing is undetermined.
- dpiMsg
Props_ ⚠setDelay - Sets the number of seconds to delay the message before it can be dequeued. Messages enqueued with a delay are put into the DPI_MSG_STATE_WAITING state. When the delay expires the message is put into the DPI_MSG_STATE_READY state. Dequeuing directly by message id overrides this delay specification. Note that delay processing requires the queue monitor to be started.
- dpiMsg
Props_ ⚠setExceptionQ - Sets the name of the queue to which the message is moved if it cannot be processed successfully. Messages are moved if the number of unsuccessful dequeue attempts has reached the maximum allowed number or if the message has expired. All messages in the exception queue are in the DPI_MSG_STATE_EXPIRED state.
- dpiMsg
Props_ ⚠setExpiration - Sets the number of seconds the message is available to be dequeued. This value is an offset from the delay. Expiration processing requires the queue monitor to be running. Until this time elapses, the messages are in the queue in the state DPI_MSG_STATE_READY. After this time elapses messages are moved to the exception queue in the DPI_MSG_STATE_EXPIRED state.
- dpiMsg
Props_ ⚠setOriginal MsgId - Sets the id of the message in the last queue that generated this message.
- dpiMsg
Props_ ⚠setPayload Bytes - Sets the payload for the message as a series of bytes. This value will be
used when the message is enqueued using
dpiQueue_enqOne()ordpiQueue_enqMany(). - dpiMsg
Props_ ⚠setPayload Json - Sets the payload for the message as a JSON object. This value will be used
when the message is enqueued using
dpiQueue_enqOne()ordpiQueue_enqMany(). - dpiMsg
Props_ ⚠setPayload Object - Sets the payload for the message as an object. This value will be used when
the message is enqueued using
dpiQueue_enqOne()ordpiQueue_enqMany(). - dpiMsg
Props_ ⚠setPriority - Sets the priority assigned to the message. A smaller number indicates a higher priority. The priority can be any number, including negative numbers.
- dpiMsg
Props_ ⚠setRecipients - Sets recipients list for the message to be enqueued.
- dpiObject
Attr_ ⚠addRef - Adds a reference to the attribute. This is intended for situations where a reference to the attribute needs to be maintained independently of the reference returned when the attribute was created.
- dpiObject
Attr_ ⚠getInfo - Returns information about the attribute.
- dpiObject
Attr_ ⚠release - Releases a reference to the attribute. A count of the references to the attribute is maintained and when this count reaches zero, the memory associated with the attribute is freed.
- dpiObject
Type_ ⚠addRef - Adds a reference to the object type. This is intended for situations where a reference to the object type needs to be maintained independently of the reference returned when the object type was created.
- dpiObject
Type_ ⚠create Object - Creates an object of the specified type and returns a reference to it. This reference should be released as soon as it is no longer needed.
- dpiObject
Type_ ⚠getAttributes - Returns the list of attributes that belong to the object type.
- dpiObject
Type_ ⚠getInfo - Returns information about the object type.
- dpiObject
Type_ ⚠release - Releases a reference to the object type. A count of the references to the object type is maintained and when this count reaches zero, the memory associated with the object type is freed.
- dpiObject_
addRef ⚠ - Adds a reference to the object. This is intended for situations where a reference to the object needs to be maintained independently of the reference returned when the object was created.
- dpiObject_
append ⚠Element - Appends an element with the specified value to the collection.
- dpiObject_
copy ⚠ - Creates an independent copy of an object and returns a reference to the newly created object. This reference should be released as soon as it is no longer needed.
- dpiObject_
delete ⚠Element ByIndex - Deletes an element from the collection. Note that the position ordinals of the remaining elements are not changed. The delete operation creates holes in the collection.
- dpiObject_
getAttribute ⚠Value - Returns the value of one of the object’s attributes.
- dpiObject_
getElement ⚠Exists ByIndex - Returns whether an element exists at the specified index.
- dpiObject_
getElement ⚠Value ByIndex - Returns the value of the element found at the specified index.
- dpiObject_
getFirst ⚠Index - Returns the first index used in a collection.
- dpiObject_
getLast ⚠Index - Returns the last index used in a collection.
- dpiObject_
getNext ⚠Index - Returns the next index used in a collection following the specified index.
- dpiObject_
getPrev ⚠Index - Returns the previous index used in a collection preceding the specified index.
- dpiObject_
getSize ⚠ - Returns the number of elements in a collection.
- dpiObject_
release ⚠ - Releases a reference to the object. A count of the references to the object is maintained and when this count reaches zero, the memory associated with the object is freed.
- dpiObject_
setAttribute ⚠Value - Sets the value of one of the object’s attributes.
- dpiObject_
setElement ⚠Value ByIndex - Sets the value of the element found at the specified index.
- dpiObject_
trim ⚠ - Trims a number of elements from the end of a collection.
- dpiPool_
acquire ⚠Connection - Acquires a connection from the pool and returns a reference to it. This
reference should be released by calling
dpiConn_release()as soon as it is no longer needed, which will also return the connection back to the pool for subsequent calls to this function. The connection can be returned back to the pool earlier by callingdpiConn_close(). - dpiPool_
addRef ⚠ - Adds a reference to the pool. This is intended for situations where a reference to the pool needs to be maintained independently of the reference returned when the pool was created.
- dpiPool_
close ⚠ - Closes the pool and makes it unusable for further activity.
- dpiPool_
create ⚠ - Creates a session pool which creates and maintains a group of stateless sessions to the database. The main benefit of session pooling is performance since making a connection to the database is a time-consuming activity, especially when the database is remote.
- dpiPool_
getBusy ⚠Count - Returns the number of sessions in the pool that are busy.
- dpiPool_
getEncoding ⚠Info - Returns the encoding information used by the pool. This will be equivalent to the values passed when the pool was created, or the values retrieved from the environment variables NLS_LANG and NLS_NCHAR.
- dpiPool_
getGet ⚠Mode - Returns the mode used for acquiring or getting connections from the pool.
- dpiPool_
getMax ⚠Lifetime Session - Returns the maximum lifetime a pooled session may exist, in seconds. Sessions in use will not be closed. They become candidates for termination only when they are released back to the pool and have existed for longer then the returned value. Note that termination only occurs when the pool is accessed. The value 0 means that there is no maximum length of time that a pooled session may exist.
- dpiPool_
getMax ⚠Sessions PerShard - Returns the maximum sessions per shard. This parameter is used for balancing shards.
- dpiPool_
getOpen ⚠Count - Returns the number of sessions in the pool that are open.
- dpiPool_
getPing ⚠Interval - Returns the ping interval duration (in seconds), which is used to check the healthiness of idle connections before getting checked out. A negative value indicates this check is disabled.
- dpiPool_
getSoda ⚠Metadata Cache - Returns whether or not the SODA metadata cache is enabled or not.
- dpiPool_
getStmt ⚠Cache Size - Returns the default size of the statement cache for sessions in the pool, in number of statements.
- dpiPool_
getTimeout ⚠ - Returns the length of time (in seconds) after which idle sessions in the pool are terminated. Note that termination only occurs when the pool is accessed. A value of 0 means that no ide sessions are terminated.
- dpiPool_
getWait ⚠Timeout - Returns the amount of time (in milliseconds) that the caller will wait for a session to become available in the pool before returning an error.
- dpiPool_
reconfigure ⚠ - Changes pool configuration corresponding to members
[
dpiPoolCreateParams.minSessions], [dpiPoolCreateParams.maxSessions] and [dpiPoolCreateParams.sessionIncrement] to the specified values. Connections will be created as needed if the value of minSessions is increased. Connections will be dropped from the pool as they are released back to the pool if minSessions is decreased. - dpiPool_
release ⚠ - Releases a reference to the pool. A count of the references to the pool is
maintained and when this count reaches zero, the memory associated with the
pool is freed and the session pool is closed if that has not already
taken place using the function
dpiPool_close(). - dpiPool_
setAccess ⚠Token - The function is used to manually set the token and private key for a
session pool. After pool creation it can be used to periodically reset
the token and private key to avoid the need for the pool token callback
function
[
dpiPoolCreateParams.accessTokenCallback] to be called during pool growth. - dpiPool_
setGet ⚠Mode - Sets the mode used for acquiring or getting connections from the pool.
- dpiPool_
setMax ⚠Lifetime Session - Sets the maximum lifetime a pooled session may exist, in seconds. Sessions in use will not be closed. They become candidates for termination only when they are released back to the pool and have existed for longer then the specified value. Note that termination only occurs when the pool is accessed. The value 0 means that there is no maximum length of time that a pooled session may exist.
- dpiPool_
setMax ⚠Sessions PerShard - Sets the maximum number of sessions per shard.
- dpiPool_
setPing ⚠Interval - Sets the ping interval duration (in seconds) which is used to to check for healthiness of sessions. If this time has passed since the last time the session was checked out a ping will be performed. A negative value will disable this check.
- dpiPool_
setSoda ⚠Metadata Cache - Sets whether the SODA metadata cache is enabled or not. Enabling the SODA
metadata cache can significantly improve the performance of repeated calls
to methods
dpiSodaDb_createCollection()(when not specifying a value for the metadata parameter) anddpiSodaDb_openCollection(). Note that the cache can become out of date if changes to the metadata of cached collections are made externally. - dpiPool_
setStmt ⚠Cache Size - Sets the default size of the statement cache for sessions in the pool.
- dpiPool_
setTimeout ⚠ - Sets the amount of time (in seconds) after which idle sessions in the pool are terminated. Note that termination only occurs when the pool is accessed. A value of zero will result in no idle sessions being terminated.
- dpiPool_
setWait ⚠Timeout - Sets the amount of time (in milliseconds) that the caller should wait for a session to be available in the pool before returning with an error.
- dpiQueue_
addRef ⚠ - Adds a reference to the queue. This is intended for situations where a reference to the queue needs to be maintained independently of the reference returned when the queue was created.
- dpiQueue_
deqMany ⚠ - Dequeues multiple messages from the queue.
- dpiQueue_
deqOne ⚠ - Dequeues a single message from the queue.
- dpiQueue_
enqMany ⚠ - Enqueues multiple messages into the queue.
- dpiQueue_
enqOne ⚠ - Enqueues a single mesasge into the queue.
- dpiQueue_
getDeq ⚠Options - Returns a reference to the dequeue options associated with the queue. These options affect how messages are dequeued.
- dpiQueue_
getEnq ⚠Options - Returns a reference to the enqueue options associated with the queue. These options affect how messages are enqueued.
- dpiQueue_
release ⚠ - Releases a reference to the queue. A count of the references to the queue is maintained and when this count reaches zero, the memory associated with the queue is freed.
- dpiRowid_
addRef ⚠ - Adds a reference to the rowid. This is intended for situations where a reference to the rowid needs to be maintained independently of the reference returned when the rowid was created.
- dpiRowid_
getString ⚠Value - Returns the sting (base64) representation of the rowid.
- dpiRowid_
release ⚠ - Releases a reference to the rowid. A count of the references to the rowid is maintained and when this count reaches zero, the memory associated with the rowid is freed.
- dpiSoda
Coll ⚠Cursor_ addRef - Adds a reference to the SODA collection cursor. This is intended for situations where a reference to the cursor needs to be maintained independently of the reference returned when the cursor was created.
- dpiSoda
Coll ⚠Cursor_ close - Closes the cursor and makes it unusable for further work immediately, rather than when the reference count reaches zero.
- dpiSoda
Coll ⚠Cursor_ getNext - Gets the next collection from the cursor, if there is one.
- dpiSoda
Coll ⚠Cursor_ release - Releases a reference to the SODA collection cursor. A count of the references to the cursor is maintained and when this count reaches zero, the memory associated with the cursor is freed.
- dpiSoda
Coll_ ⚠addRef - Adds a reference to the SODA collection. This is intended for situations where a reference to the collection needs to be maintained independently of the reference returned when the collection was created.
- dpiSoda
Coll_ ⚠create Index - Create an index on the collection, which can improve the performance of SODA query-by-examples (QBE). An index is defined by a specification, which is a JSON-encoded string that specifies how particular QBE patterns are to be indexed for quicker matching. See Overview of SODA indexing.
- dpiSoda
Coll_ ⚠drop - Drops a SODA collection from the database.
- dpiSoda
Coll_ ⚠drop Index - Drop an index on the collection.
- dpiSoda
Coll_ ⚠find - Finds all of the documents in the collection that match the specified options.
- dpiSoda
Coll_ ⚠find One - Finds a single document in the collection that matches the specified options.
- dpiSoda
Coll_ ⚠getData Guide - Returns a document containing the data guide for the collection. See JSON Data Guide.
- dpiSoda
Coll_ ⚠getDoc Count - Returns the number of documents in the collection that match the specified options.
- dpiSoda
Coll_ ⚠getMetadata - Returns the metadata for the collection.
- dpiSoda
Coll_ ⚠getName - Returns the name of the collection.
- dpiSoda
Coll_ ⚠insert Many - Inserts multiple documents into the collection and optionally returns result documents containing information about the newly inserted documents.
- dpiSoda
Coll_ ⚠insert Many With Options - Inserts multiple documents into the collection and optionally returns result documents containing information about the newly inserted documents. In addition, options can be supplied to modify how the documents are inserted or returned.
- dpiSoda
Coll_ ⚠insert One - Inserts a document into the collection and optionally returns it.
- dpiSoda
Coll_ ⚠insert OneWith Options - Inserts a document into the collection and optionally returns it. In addition, options can be supplied to modify how the document is inserted or returned.
- dpiSoda
Coll_ ⚠list Indexes - Returns a list of indexes associated with the collection.
- dpiSoda
Coll_ ⚠release - Releases a reference to the SODA collection. A count of the references to the collection is maintained and when this count reaches zero, the memory associated with the collection is freed.
- dpiSoda
Coll_ ⚠remove - Removes all of the documents in the collection that match the specified options.
- dpiSoda
Coll_ ⚠replace One - Replaces the single document in the collection matching the given options with the new document.
- dpiSoda
Coll_ ⚠save - Saves a document into the collection. This method is equivalent to
dpiSodaColl_insertOne()except that if client-assigned keys are used, and the document with the specified key already exists in the collection, it will be replaced with the input document. - dpiSoda
Coll_ ⚠save With Options - Saves a document into the collection. This method is equivalent to
dpiSodaColl_insertOneWithOptions()except that if client-assigned keys are used, and the document with the specified key already exists in the collection, it will be replaced with the input document. - dpiSoda
Coll_ ⚠truncate - Removes all of the documents in a SODA collection in a similar manner to a TRUNCATE TABLE statement.
- dpiSoda
Db_ ⚠addRef - Adds a reference to the SODA database. This is intended for situations where a reference to the SODA database needs to be maintained independently of the reference returned when the database was created.
- dpiSoda
Db_ ⚠create Collection - Creates a new SODA collection if a collection by that name does not exist. If a collection by that name already exists, the collection is opened if the metadata of the collection is equivalent to the supplied metadata; otherwise, an error is returned.
- dpiSoda
Db_ ⚠create Document - Creates a SODA document that can later be inserted into a collection or used to replace an existing document in a collection. This method should be used when the content is binary or encoded text.
- dpiSoda
Db_ ⚠create Json Document - Creates a SODA document that can later be inserted into a collection or used to replace an existing document in a collection. This method should be used when the content is JSON and Oracle Client 23 or higher is being used.
- dpiSoda
Db_ ⚠free Collection Names - dpiSoda
Db_ ⚠getCollection Names - Return an array of names of SODA collections available in the database.
- dpiSoda
Db_ ⚠getCollections - Return a cursor to iterate over the SODA collections available in the database.
- dpiSoda
Db_ ⚠open Collection - Opens an existing SODA collection.
- dpiSoda
Db_ ⚠release - Releases a reference to the database. A count of the references to the database is maintained and when this count reaches zero, the memory associated with the database is freed.
- dpiSoda
DocCursor_ ⚠addRef - Adds a reference to the SODA document cursor. This is intended for situations where a reference to the cursor needs to be maintained independently of the reference returned when the cursor was created.
- dpiSoda
DocCursor_ ⚠close - Closes the cursor and makes it unusable for further work immediately, rather than when the reference count reaches zero.
- dpiSoda
DocCursor_ ⚠getNext - Gets the next document from the cursor, if there is one.
- dpiSoda
DocCursor_ ⚠release - Releases a reference to the SODA document cursor. A count of the references to the cursor is maintained and when this count reaches zero, the memory associated with the cursor is freed.
- dpiSoda
Doc_ ⚠addRef - Adds a reference to the SODA document. This is intended for situations where a reference to the document needs to be maintained independently of the reference returned when the document was created.
- dpiSoda
Doc_ ⚠getContent - Returns the content of the document. If the document contains JSON an
exception will be thrown. Use
dpiSodaDoc_getIsJson()to determine whether to call this function ordpiSodaDoc_getJsonContent(). - dpiSoda
Doc_ ⚠getCreated On - Returns the timestamp when the document was created, as a string, in ISO
format. This value will be empty if the metadata used to create the
collection in which the document is found does not support the storage of
this attribute, or if the document was created using
dpiSodaDb_createDocument(). - dpiSoda
Doc_ ⚠getIs Json - Returns a boolean value indicating if the document contains JSON or not.
This method should be used to determine if
dpiSodaDoc_getContent()ordpiSodaDoc_getJsonContent()should be called to get the content of the document. - dpiSoda
Doc_ ⚠getJson Content - Returns the content of the document. If the document does not contain JSON
an exception will be thrown. Use
dpiSodaDoc_getIsJson()to determine whether to call this function ordpiSodaDoc_getContent(). - dpiSoda
Doc_ ⚠getKey - Returns the key that uniquely identifies the document in the collection.
This value will be empty if no key was supplied when the document was
created using
dpiSodaDb_createDocument(). - dpiSoda
Doc_ ⚠getLast Modified - Returns the timestamp when the document was last modified, as a string, in
ISO format. This value will be empty if the metadata used to create the
collection in which the document is found does not support the storage of
this attribute, or if the document was created using
dpiSodaDb_createDocument(). - dpiSoda
Doc_ ⚠getMedia Type - Returns the media type of the document.
- dpiSoda
Doc_ ⚠getVersion - Returns the current version of the document. This value will be empty if
the metadata used to create the collection in which the document is found
does not support the storage of this attribute, or if the document was
created using
dpiSodaDb_createDocument(). - dpiSoda
Doc_ ⚠release - Releases a reference to the SODA document. A count of the references to the document is maintained and when this count reaches zero, the memory associated with the document is freed.
- dpiStmt_
addRef ⚠ - Adds a reference to the statement. This is intended for situations where a reference to the statement needs to be maintained independently of the reference returned when the statement was created.
- dpiStmt_
bind ⚠ByName - Binds a variable to a named placeholder in the statement. A reference to the variable is retained by the library and is released when the statement itself is released or a new variable is bound to the same name.
- dpiStmt_
bind ⚠ByPos - Binds a variable to a placeholder in the statement by position. A reference to the variable is retained by the library and is released when the statement itself is released or a new variable is bound to the same position.
- dpiStmt_
bind ⚠Value ByName - Binds a value to a named placeholder in the statement without the need to create a variable directly. One is created implicitly and released when the statement is released or a new value is bound to the same name.
- dpiStmt_
bind ⚠Value ByPos - Binds a value to a placeholder in the statement without the need to create a variable directly. One is created implicitly and released when the statement is released or a new value is bound to the same position.
- dpiStmt_
close ⚠ - Closes the statement and makes it unusable for further work immediately, rather than when the reference count reaches zero.
- dpiStmt_
define ⚠ - Defines the variable that will be used to fetch rows from the statement. A reference to the variable will be retained until the next define is performed on the same position or the statement is closed.
- dpiStmt_
define ⚠Value - Defines the type of data that will be used to fetch rows from the
statement. This is intended for use with the function
dpiStmt_getQueryValue(), when the default data type derived from the column metadata needs to be overridden by the application. Internally, a variable is created with the specified data type and size. - dpiStmt_
delete ⚠From Cache - Excludes the associated SQL statement from the statement cache. If the SQL statement was not already in the cache, it will not be added. This function can be called before or after the statment is executed.
- dpiStmt_
execute ⚠ - Executes the statement using the bound values. For queries this makes
available metadata which can be acquired using the function
dpiStmt_getQueryInfo(). For non-queries, out and in-out variables are populated with their values. - dpiStmt_
execute ⚠Many - Executes the statement the specified number of times using the bound values. Each bound variable must have at least this many elements allocated or an error is returned.
- dpiStmt_
fetch ⚠ - Fetches a single row from the buffers defined for the query. If no row is
available in the buffers, an internal fetch takes place to populate them,
if rows are available. The number of rows fetched into the internal
buffers can be set by calling
dpiStmt_setFetchArraySize(). If the statement does not refer to a query an error is returned. All columns that have not been defined prior to this call are implicitly defined using the metadata made available when the statement was executed. - dpiStmt_
fetch ⚠Rows - Returns the number of rows that are available in the buffers defined for
the query. If no rows are currently available in the buffers, an internal
fetch takes place in order to populate them, if rows are available. The
number of rows fetched into the internal buffers can be set by calling
dpiStmt_setFetchArraySize(). If the statement does not refer to a query an error is returned. All columns that have not been defined prior to this call are implicitly defined using the metadata made available when the statement was executed. - dpiStmt_
getBatch ⚠Error Count - Returns the number of batch errors that took place during the last execution with batch mode enabled. Batch errors are only available when both the client and the server are at 12.1.
- dpiStmt_
getBatch ⚠Errors - Returns the batch errors that took place during the last execution with batch mode enabled. Batch errors are only available when both the client and the server are at 12.1.
- dpiStmt_
getBind ⚠Count - Returns the number of bind variables in the prepared statement. In SQL statements this is the total number of bind variables whereas in PL/SQL statements this is the count of the unique bind variables.
- dpiStmt_
getBind ⚠Names - Returns the names of the unique bind variables in the prepared statement.
- dpiStmt_
getFetch ⚠Array Size - Gets the array size used for performing fetches.
- dpiStmt_
getImplicit ⚠Result - Returns the next implicit result available from the last execution of the statement. Implicit results are only available when both the client and server are 12.1 or higher.
- dpiStmt_
getInfo ⚠ - Returns information about the statement.
- dpiStmt_
getLast ⚠Rowid - Returns the rowid of the last row that was affected by the statement.
- dpiStmt_
getNum ⚠Query Columns - Returns the number of columns that are being queried.
- dpiStmt_
getOci ⚠Attr - Returns the value of an OCI attribute. This is intended solely for testing attributes that are not otherwise supported by ODPI-C and should not be used for any other purpose. Use only as directed by Oracle.
- dpiStmt_
getPrefetch ⚠Rows - Gets the number of rows that will be prefetched by the Oracle Client library when a query is executed.
- dpiStmt_
getQuery ⚠Info - Returns information about the column that is being queried.
- dpiStmt_
getQuery ⚠Value - Returns the value of the column at the given position for the currently
fetched row, without needing to provide a variable. If the data type of
the column needs to be overridden, the function
dpiStmt_defineValue()can be called to specify a different type after executing the statement but before fetching any data. - dpiStmt_
getRow ⚠Count - Returns the number of rows affected by the last DML statement that was executed, the number of rows currently fetched from a query, or the number of successful executions of a PL/SQL block. In all other cases 0 is returned.
- dpiStmt_
getRow ⚠Counts - Returns an array of row counts affected by the last invocation of
dpiStmt_executeMany()with the array DML rowcounts mode enabled. This feature is only available if both client and server are at 12.1. - dpiStmt_
getSubscr ⚠Query Id - Returns the id of the query that was just registered on the subscription
by calling
dpiStmt_execute()on a statement prepared by callingdpiSubscr_prepareStmt(). - dpiStmt_
release ⚠ - Releases a reference to the statement. A count of the references to the
statement is maintained and when this count reaches zero, the memory
associated with the statement is freed and the statement is closed if that
has not already taken place using the function
dpiStmt_close(). - dpiStmt_
scroll ⚠ - Scrolls the statement to the position in the cursor specified by the mode and offset.
- dpiStmt_
setFetch ⚠Array Size - Sets the array size used for performing fetches. All variables defined for fetching must have this many (or more) elements allocated for them. The higher this value is the less network round trips are required to fetch rows from the database but more memory is also required. A value of zero will reset the array size to the default value of DPI_DEFAULT_FETCH_ARRAY_SIZE.
- dpiStmt_
setOci ⚠Attr - Sets the value of an OCI attribute. This is intended solely for testing attributes that are not otherwise supported by ODPI-C and should not be used for any other purpose. Use only as directed by Oracle.
- dpiStmt_
setPrefetch ⚠Rows - Sets the number of rows that will be prefetched by the Oracle Client library when a query is executed. The default value is DPI_DEFAULT_PREFETCH_ROWS (2). Increasing this value may reduce the number of round-trips to the database that are required in order to fetch rows, but at the cost of increasing memory requirements. Setting this value to 0 will disable prefetch completely, which may be useful when the timing for fetching rows must be controlled by the caller.
- dpiSubscr_
addRef ⚠ - Adds a reference to the subscription. This is intended for situations where a reference to the subscription needs to be maintained independently of the reference returned when the subscription was created.
- dpiSubscr_
prepare ⚠Stmt - Prepares a statement for registration on the subscription. The statement is
then registered by calling the function
dpiStmt_execute(). The reference to the statement that is returned should be released as soon as it is no longer needed. - dpiSubscr_
release ⚠ - Releases a reference to the subscription. A count of the references to the
subscription is maintained and when this count reaches zero, the memory
associated with the subscription is freed. The subscription is also
deregistered so that notifications are no longer sent, if this was not
already done using the function
dpiConn_unsubscribe(). - dpiVar_
addRef ⚠ - Adds a reference to the variable. This is intended for situations where a reference to the variable needs to be maintained independently of the reference returned when the variable was created.
- dpiVar_
copy ⚠Data - Copies the data from one variable to another variable.
- dpiVar_
getNum ⚠Elements InArray - Returns the number of elements in a PL/SQL index-by table if the variable
was created as an array by the function
dpiConn_newVar(). If the variable is one of the output bind variables of a DML returning statement, however, the value returned will correspond to the number of rows returned by the DML returning statement. In all other cases, the value returned will be the number of elements the variable was created with. - dpiVar_
getReturned ⚠Data - Returns a pointer to an array of
dpiDatastructures used for transferring data to and from the database. These structures are allocated by the variable itself when a DML returning statement is executed and the variable is bound. - dpiVar_
getSize ⚠InBytes - Returns the size of the buffer used for one element of the array used for fetching/binding Oracle data.
- dpiVar_
release ⚠ - Releases a reference to the variable. A count of the references to the variable is maintained and when this count reaches zero, the memory associated with the variable is freed.
- dpiVar_
setFrom ⚠Bytes - Sets the variable value to the specified byte string. In the case of the variable’s Oracle type being DPI_ORACLE_TYPE_NUMBER, the byte string is converted to an Oracle number during the call to this function.
- dpiVar_
setFrom ⚠Json - Sets the variable value to the specified JSON value.
- dpiVar_
setFrom ⚠Lob - Sets the variable value to the specified LOB.
- dpiVar_
setFrom ⚠Object - Sets the variable value to the specified object.
- dpiVar_
setFrom ⚠Rowid - Sets the variable value to the specified rowid.
- dpiVar_
setFrom ⚠Stmt - Sets the variable value to the specified statement.
- dpiVar_
setFrom ⚠Vector - Sets the variable value to the specified vector value.
- dpiVar_
setNum ⚠Elements InArray - Sets the number of elements in a PL/SQL index-by table.
- dpiVector_
addRef ⚠ - Adds a reference to the vector value. This is intended for situations where a reference to the vector value needs to be maintained independently of the reference returned when the vector value was created.
- dpiVector_
getValue ⚠ - Returns information about the vector.
- dpiVector_
release ⚠ - Releases a reference to the vector value. A count of the references to the vector value is maintained and when this count reaches zero, the memory associated with the vector value is freed.
- dpiVector_
setValue ⚠ - Sets the vector value from the supplied information.
Type Aliases§
- dpiAccess
Token Callback - dpiAuth
Mode - This enumeration identifies the mode to use when authorizing connections to the database.
- dpiConn
Close Mode - This enumeration identifies the mode to use when closing connections to the database.
- dpiCreate
Mode - This enumeration identifies the mode to use when creating connections to the database. Note that the OCI objects mode is always enabled.
- dpiDeq
Mode - This enumeration identifies the modes that are possible when dequeuing messages from a queue.
- dpiDeq
Navigation - This enumeration identifies the method used for determining which message is to be dequeued from a queue.
- dpiEvent
Type - This enumeration identifies the types of events that can take place. The event type is part of the messages that are sent to subscriptions.
- dpiExec
Mode - This enumeration identifies the available modes for executing statements
using
dpiStmt_execute()anddpiStmt_executeMany(). - dpiFetch
Mode - This enumeration identifies the mode to use when scrolling the cursor to a new
location using the function
dpiStmt_scroll(). - dpiJson
Options - This enumeration identifies the options that can be used when calling
dpiJson_getValue(). - dpiMessage
Delivery Mode - This enumeration identifies the delivery mode used for filtering messages when dequeuing messages from a queue.
- dpiMessage
State - This enumeration identifies the possible states for messages in a queue.
- dpiNative
Type Num - This enumeration identifies the type of data that is being transferred to and
from the database. It is used in the structures
dpiDataTypeInfo,dpiShardingKeyColumnanddpiJsonNode. - dpiOp
Code - This enumeration identifies the types of operations that can take place during object change and query change notification. It is used both as a filter when determining which operations to consider when sending notifications as well as identifying the operation that took place on a particular table or row when a notification is sent. Multiple values can be OR’ed together to specify multiple types of operations at the same time.
- dpiOracle
Type Num - This enumeration identifies the types of Oracle data that can be used for binding data as arguments to a statement, fetching data from the database, or getting and setting object attributes and element values.
- dpiPool
Close Mode - This enumeration identifies the mode to use when closing pools.
- dpiPool
GetMode - This enumeration identifies the mode to use when getting sessions from a session pool.
- dpiPurity
- This enumeration identifies the purity of the sessions that are acquired when using connection classes during connection creation.
- dpiServer
Type - This enumeration identifies the type of server process associated with a connection. It is only available with Oracle Client libraries 23.4 or higher.
- dpiShutdown
Mode - This enumeration identifies the mode to use when shutting down a database
using
dpiConn_shutdownDatabase(). - dpiSoda
Coll Names - dpiSoda
Flags - This enumeration identifies the flags that can be used with SODA functions.
- dpiStartup
Mode - This enumeration identifies the mode to use when starting up a database using
dpiConn_startupDatabase(). - dpiStatement
Type - This enumeration identifies the type of statement that has been prepared. It is
available as part of the structure
dpiStmtInfo. - dpiSubscr
Callback - dpiSubscr
Grouping Class - This enumeration identifies the grouping class. Instead of individual events
being delivered to the callback, events are grouped before being sent to the
callback. This enumeration is used in the
dpiSubscrCreateParamsstructure. - dpiSubscr
Grouping Type - This enumeration identifies the grouping type. It is used in the
dpiSubscrCreateParamsstructure. - dpiSubscr
Namespace - This enumeration identifies the namespaces supported by subscriptions.
- dpiSubscr
Protocol - This enumeration identifies the protocol used for sending notifications to subscriptions.
- dpiSubscrQOS
- This enumeration identifies the quality of service flags for sending notifications to subscriptions.
- dpiTpc
Begin Flags - This enumeration identifies the flags that can be used when calling
dpiConn_tpcBegin(). - dpiTpc
EndFlags - This enumeration identifies the flags that can be used when calling
dpiConn_tpcEnd(). - dpiVector
Flags - This enumeration identifies the possible values for
[
dpiDataTypeInfo.vectorFlags]. - dpiVector
Format - This enumeration identifies the storage format for a vector’s dimensions.
- dpiVisibility
- This enumeration identifies the visibility of messages in advanced queuing.
Unions§
- dpiData
Buffer - This union is used for passing data to and from the database without requiring casts.
- dpiString
List__ bindgen_ ty_ 1 - dpiString
List__ bindgen_ ty_ 2 - dpiString
List__ bindgen_ ty_ 3 - dpiVector
Dimension Buffer - This union is used for passing vector dimensions to and from the database without requiring casts.