| Source for file oci8.phpDocumentation is available at oci8.php 
// +----------------------------------------------------------------------+// +----------------------------------------------------------------------+// | Copyright (c) 1998-2004 Manuel Lemos, Tomas V.V.Cox,                 |// | Stig. S. Bakken, Lukas Smith                                         |// | All rights reserved.                                                 |// +----------------------------------------------------------------------+// | MDB2 is a merge of PEAR DB and Metabases that provides a unified DB  |// | API as well as database abstraction for PHP applications.            |// | This LICENSE is in the BSD license style.                            |// | Redistribution and use in source and binary forms, with or without   |// | modification, are permitted provided that the following conditions   |// | Redistributions of source code must retain the above copyright       |// | notice, this list of conditions and the following disclaimer.        |// | Redistributions in binary form must reproduce the above copyright    |// | notice, this list of conditions and the following disclaimer in the  |// | documentation and/or other materials provided with the distribution. |// | Neither the name of Manuel Lemos, Tomas V.V.Cox, Stig. S. Bakken,    |// | Lukas Smith nor the names of his contributors may be used to endorse |// | or promote products derived from this software without specific prior|// | written permission.                                                  |// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS  |// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT    |// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS    |// | FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE      |// | REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,          |// | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |// | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS|// |  OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED  |// | AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT          |// | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY|// | WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE          |// | POSSIBILITY OF SUCH DAMAGE.                                          |// +----------------------------------------------------------------------+// | Author: Lukas Smith <smith@backendmedia.com>                         |// +----------------------------------------------------------------------+// $Id: oci8.php,v 1.5 2004/04/09 10:41:21 lsmith Exp $require_once 'MDB2/Driver/Datatype/Common.php'; * @author Lukas Smith <smith@backendmedia.com>     * convert a value to a RDBMS indepdenant MDB2 type     * @param mixed $value value to be converted     * @param int $type constant that specifies which type to convert to     * @return mixed converted value        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;                return $this->_baseConvertResult($value, $type) ;    // {{{ getTypeDeclaration()     * Obtain DBMS specific SQL code portion needed to declare an text type     * field to be used in statements like CREATE TABLE.     * @param string $field  associative array with the name of the properties     *       of the field being declared as array indexes. Currently, the types     *       of supported field properties are as follows:     *           Integer value that determines the maximum length of the text     *           field. If this argument is missing the field should be     *           declared to have the longest length allowed by the DBMS.     *           Text value to be used as default for this field.     *           Boolean flag that indicates whether this field is constrained     * @return string  DBMS specific SQL code portion that should be used to     *       declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;                $length = ( isset($field['length']) ? $field['length'] : (($length = $db-> options['default_text_field_length']) ? $length : 4000)) ;                return 'VARCHAR ('.$length .')' ;                return 'NUMBER(*,'.$db-> options['decimal_places'] .')' ;    // {{{ getIntegerDeclaration()     * Obtain DBMS specific SQL code portion needed to declare an integer type     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Id     *         of supported field properties are as follows:     *             Boolean flag that indicates whether the field should be     *             declared as unsigned integer if possible.     *             Integer value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        if (isset($field['unsigned'])) {            $db->warning = "unsigned integer field \"$name\" is being declared as signed integer ";        $default = isset($field['default']) ? ' DEFAULT ' .        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getTextDeclaration()     * Obtain DBMS specific SQL code portion needed to declare an text type     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Integer value that determines the maximum length of the text     *             field. If this argument is missing the field should be     *             declared to have the longest length allowed by the DBMS.     *             Text value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $default = isset($field['default']) ? ' DEFAULT TIME' .        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;        return $name.' ' .$type .$default .$notnull ;    // {{{ getCLOBDeclaration()     * Obtain DBMS specific SQL code portion needed to declare an character     * large object type field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Integer value that determines the maximum length of the large     *             object field. If this argument is missing the field should be     *             declared to have the longest length allowed by the DBMS.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getBLOBDeclaration()     * Obtain DBMS specific SQL code portion needed to declare an binary large     * object type field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Integer value that determines the maximum length of the large     *             object field. If this argument is missing the field should be     *             declared to have the longest length allowed by the DBMS.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getDateDeclaration()     * Obtain DBMS specific SQL code portion needed to declare a date type     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Date value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $default = isset($field['default']) ? ' DEFAULT ' .        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getTimestampDeclaration()     * Obtain DBMS specific SQL code portion needed to declare a timestamp     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Timestamp value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $default = isset($field['default']) ? ' DEFAULT ' .            $this->quoteTimstamp($field['default']) : '' ;        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getTimeDeclaration()     * Obtain DBMS specific SQL code portion needed to declare a time     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Time value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $default = isset($field['default']) ? ' DEFAULT ' .            $db->quoteime($field['default']) : '' ;        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getFloatDeclaration()     * Obtain DBMS specific SQL code portion needed to declare a float type     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Float value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $default = isset($field['default']) ? ' DEFAULT ' .        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;    // {{{ getDecimalDeclaration()     * Obtain DBMS specific SQL code portion needed to declare a decimal type     * field to be used in statements like CREATE TABLE.     * @param string $name name the field to be declared.     * @param string $field associative array with the name of the properties     *         of the field being declared as array indexes. Currently, the types     *         of supported field properties are as follows:     *             Decimal value to be used as default for this field.     *             Boolean flag that indicates whether this field is constrained     * @return string DBMS specific SQL code portion that should be used to     *         declare the specified field.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        $default = isset($field['default']) ? ' DEFAULT ' .        $notnull = isset($field['notnull']) ? ' NOT NULL' : '' ;     * Convert a text value into a DBMS specific format that is suitable to     * compose query statements.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;     * Convert a text value into a DBMS specific format that is suitable to     * compose query statements.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;     * Convert a text value into a DBMS specific format that is suitable to     * compose query statements.     * @param string $value text string value that is intended to be converted.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        return ($value === null) ? 'NULL' : "TO_DATE('$value','YYYY-MM-DD') ";     * Convert a text value into a DBMS specific format that is suitable to     * compose query statements.     * @param string $value text string value that is intended to be converted.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        return ($value === null) ? 'NULL' : "TO_DATE('$value','YYYY-MM-DD HH24:MI:SS') ";     * Convert a text value into a DBMS specific format that is suitable to     *        compose query statements.     * @param string $value text string value that is intended to be converted.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        return ($value === null) ? 'NULL' : "TO_DATE('0001-01-01 $value','YYYY-MM-DD HH24:MI:SS') ";     * Convert a text value into a DBMS specific format that is suitable to     * compose query statements.     * @param string $value text string value that is intended to be converted.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        return ($value === null) ? 'NULL' : (float)$value ;     * Convert a text value into a DBMS specific format that is suitable to     * compose query statements.     * @param string $value text string value that is intended to be converted.     * @return string text string that represents the given argument value in     *         a DBMS specific format.        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        return ($value === null) ? 'NULL' : $value ;     * retrieve LOB from the database     * @param int $lob handle to a lob created by the createLOB() function     * @return mixed MDB2_OK on success, a MDB2 error on failure    function _retrieveLOB($lob)        $db =& $GLOBALS['_MDB2_databases'][$this->db_index] ;        if (!isset($db-> lobs[$lob])) {                'it was not specified a valid lob');        if (!isset($db-> lobs[$lob]['loaded'])) {                   'attemped to retrieve LOB from non existing or NULL column');            $db->lobs[$lob]['value'] = $db-> lobs[$lob]['value']-> load() ;            $db->lobs[$lob]['loaded'] = true;
		    
 
		    Documentation generated on Mon, 11 Mar 2019 10:15:52 -0400 by phpDocumentor 1.4.4 . PEAR Logo Copyright ©  PHP Group 2004.
	       |