[ Index ]

PHP Cross Reference of moodle-2.8

title

Body

[close]

/lib/adodb/drivers/ -> adodb-oci8quercus.inc.php (source)

   1  <?php
   2  /*
   3  V5.19  23-Apr-2014  (c) 2000-2014 John Lim. All rights reserved.
   4    Released under both BSD license and Lesser GPL library license.
   5    Whenever there is any discrepancy between the two licenses,
   6    the BSD license will take precedence.
   7  
   8    Latest version is available at http://adodb.sourceforge.net
   9  
  10    Portable version of oci8 driver, to make it more similar to other database drivers.
  11    The main differences are
  12  
  13     1. that the OCI_ASSOC names are in lowercase instead of uppercase.
  14     2. bind variables are mapped using ? instead of :<bindvar>
  15  
  16     Should some emulation of RecordCount() be implemented?
  17  
  18  */
  19  
  20  // security - hide paths
  21  if (!defined('ADODB_DIR')) die();
  22  
  23  include_once(ADODB_DIR.'/drivers/adodb-oci8.inc.php');
  24  
  25  class ADODB_oci8quercus extends ADODB_oci8 {
  26      var $databaseType = 'oci8quercus';
  27      var $dataProvider = 'oci8';
  28  
  29  	function ADODB_oci8quercus()
  30      {
  31      }
  32  
  33  }
  34  
  35  /*--------------------------------------------------------------------------------------
  36           Class Name: Recordset
  37  --------------------------------------------------------------------------------------*/
  38  
  39  class ADORecordset_oci8quercus extends ADORecordset_oci8 {
  40  
  41      var $databaseType = 'oci8quercus';
  42  
  43  	function ADORecordset_oci8quercus($queryID,$mode=false)
  44      {
  45          $this->ADORecordset_oci8($queryID,$mode);
  46      }
  47  
  48  	function _FetchField($fieldOffset = -1)
  49      {
  50      global $QUERCUS;
  51          $fld = new ADOFieldObject;
  52  
  53          if (!empty($QUERCUS)) {
  54              $fld->name = oci_field_name($this->_queryID, $fieldOffset);
  55              $fld->type = oci_field_type($this->_queryID, $fieldOffset);
  56              $fld->max_length = oci_field_size($this->_queryID, $fieldOffset);
  57  
  58              //if ($fld->name == 'VAL6_NUM_12_4') $fld->type = 'NUMBER';
  59              switch($fld->type) {
  60                  case 'string': $fld->type = 'VARCHAR'; break;
  61                  case 'real': $fld->type = 'NUMBER'; break;
  62              }
  63          } else {
  64              $fieldOffset += 1;
  65              $fld->name = oci_field_name($this->_queryID, $fieldOffset);
  66              $fld->type = oci_field_type($this->_queryID, $fieldOffset);
  67              $fld->max_length = oci_field_size($this->_queryID, $fieldOffset);
  68          }
  69           switch($fld->type) {
  70          case 'NUMBER':
  71               $p = oci_field_precision($this->_queryID, $fieldOffset);
  72              $sc = oci_field_scale($this->_queryID, $fieldOffset);
  73              if ($p != 0 && $sc == 0) $fld->type = 'INT';
  74              $fld->scale = $p;
  75              break;
  76  
  77           case 'CLOB':
  78          case 'NCLOB':
  79          case 'BLOB':
  80              $fld->max_length = -1;
  81              break;
  82          }
  83  
  84          return $fld;
  85      }
  86  
  87  }


Generated: Fri Nov 28 20:29:05 2014 Cross-referenced by PHPXref 0.7.1