Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

OCI8 Function and Method Modes
Constant Description
OCI_ASSOC Used with oci_fetch_all() and oci_fetch_array() to get results as an associative array.
OCI_BOTH Used with oci_fetch_all() and oci_fetch_array() to get results as an array with both associative and number indices.
OCI_COMMIT_ON_SUCCESS Statement execution mode for oci_execute() call. Automatically commit changes when the statement has succeeded.
OCI_CRED_EXT Used with oci_connect() for using Oracles' External or OS authentication. Introduced in PHP 5.3 and PECL OCI8 1.3.4.
OCI_DEFAULT Statement execution mode for oci_execute(). The transaction is not automatically committed when using this mode. From PHP 5.3.2 (PECL OCI8 1.4) onwards, OCI_NO_AUTO_COMMIT is preferred instead of OCI_DEFAULT.
OCI_DESCRIBE_ONLY Statement execution mode for oci_execute(). Use this mode if you want meta data such as the column names but don't want to fetch rows from the query.
OCI_EXACT_FETCH Obsolete. Statement fetch mode. Used when the application knows in advance exactly how many rows it will be fetching. This mode turns prefetching off for Oracle release 8 or later mode. The cursor is canceled after the desired rows are fetched which may result in reduced server-side resource usage.
OCI_FETCHSTATEMENT_BY_COLUMN Default mode of oci_fetch_all().
OCI_FETCHSTATEMENT_BY_ROW Alternative mode of oci_fetch_all().
OCI_LOB_BUFFER_FREE Used with OCI-Lob::flush to free buffers used.
OCI_NO_AUTO_COMMIT Statement execution mode for oci_execute(). The statement is not committed automatically when using this mode. For readability in new code, use this value instead of the obsolete OCI_DEFAULT constant. Introduced in PHP 5.3.2 (PECL OCI8 1.4).
OCI_NUM Used with oci_fetch_all() and oci_fetch_array() to get results as an enumerated array.
OCI_RETURN_LOBS Used with oci_fetch_array() to get the data value of the LOB instead of the descriptor.
OCI_RETURN_NULLS Used with oci_fetch_array() to get empty array elements if the row items value is NULL.
OCI_SEEK_CUR Used with OCI-Lob::seek to set the seek position.
OCI_SEEK_END Used with OCI-Lob::seek to set the seek position.
OCI_SEEK_SET Used with OCI-Lob::seek to set the seek position.
OCI_SYSDATE Obsolete.
OCI_SYSDBA Used with oci_connect() to connect with the SYSDBA privilege. The php.ini setting oci8.privileged_connect should be enabled to use this.
OCI_SYSOPER Used with oci_connect() to connect with the SYSOPER privilege. The php.ini setting oci8.privileged_connect should be enabled to use this.
OCI_TEMP_BLOB Used with OCI-Lob::writeTemporary to indicate that a temporary BLOB should be created.
OCI_TEMP_CLOB Used with OCI-Lob::writeTemporary to indicate that a temporary CLOB should be created.
OCI8 Bind and Define Types
Constant Description
OCI_B_BFILE Used with oci_bind_by_name() when binding BFILEs.
OCI_B_BIN Used with oci_bind_by_name() to bind RAW values.
OCI_B_BLOB Used with oci_bind_by_name() when binding BLOBs.
OCI_B_CFILEE Used with oci_bind_by_name() when binding CFILEs.
OCI_B_CLOB Used with oci_bind_by_name() when binding CLOBs.
OCI_B_CURSOR Used with oci_bind_by_name() when binding cursors, previously allocated with oci_new_descriptor().
OCI_B_INT Used with oci_bind_array_by_name() to bind arrays of INTEGER.
OCI_B_NTY Used with oci_bind_by_name() when binding named data types. Note: in PHP < 5.0 it was called OCI_B_SQLT_NTY.
OCI_B_NUM Used with oci_bind_array_by_name() to bind arrays of NUMBER.
OCI_B_ROWID Used with oci_bind_by_name() when binding ROWIDs.
SQLT_AFC Used with oci_bind_array_by_name() to bind arrays of CHAR.
SQLT_AVC Used with oci_bind_array_by_name() to bind arrays of VARCHAR2.
SQLT_BDOUBLE Not supported.
SQLT_BFILEE The same as OCI_B_BFILE.
SQLT_BFLOAT Not supported.
SQLT_BIN The same as OCI_B_BIN.
SQLT_BLOB The same as OCI_B_BLOB.
SQLT_CFILEE The same as OCI_B_CFILEE.
SQLT_CHR Used with oci_bind_array_by_name() to bind arrays of VARCHAR2. Also used with oci_bind_by_name().
SQLT_CLOB The same as OCI_B_CLOB.
SQLT_FLT Used with oci_bind_array_by_name() to bind arrays of FLOAT.
SQLT_INT The same as OCI_B_INT.
SQLT_LBI Used with oci_bind_by_name() to bind LONG RAW values.
SQLT_LNG Used with oci_bind_by_name() to bind LONG values.
SQLT_LVC Used with oci_bind_array_by_name() to bind arrays of LONG VARCHAR.
SQLT_NTY The same as OCI_B_NTY.
SQLT_NUM The same as OCI_B_NUM.
SQLT_ODT Used with oci_bind_array_by_name() to bind arrays of LONG.
SQLT_RDD The same as OCI_B_ROWID.
SQLT_RSET The same as OCI_B_CURSOR.
SQLT_STR Used with oci_bind_array_by_name() to bind arrays of STRING.
SQLT_UIN Not supported.
SQLT_VCS Used with oci_bind_array_by_name() to bind arrays of VARCHAR.
OCI8 Descriptor Types
Constant Description
OCI_DTYPE_FILE This flag tells oci_new_descriptor() to initialize a new FILE descriptor.
OCI_DTYPE_LOB This flag tells oci_new_descriptor() to initialize a new LOB descriptor.
OCI_DTYPE_ROWID This flag tells oci_new_descriptor() to initialize a new ROWID descriptor.
OCI_D_FILE The same as OCI_DTYPE_FILE.
OCI_D_LOB The same as OCI_DTYPE_LOB.
OCI_D_ROWID The same as OCI_DTYPE_ROWID.