コード例 #1
0
 /**
  * Analyse la requète pour qu'elle passe sans encombre dans le driver MySQL
  */
 protected function _parseQuery($pQueryString, $pParameters = array(), $pOffset = null, $pCount = null)
 {
     $toReturn = parent::_parseQuery($pQueryString, $pParameters, $pOffset, $pCount);
     //only for select query
     if ($toReturn['isSelect'] && ($pOffset !== null || $pCount !== null)) {
         $pos = stripos($toReturn['query'], "select");
         if ($pCount === null) {
             $pCount = $this->_getMaxCount();
         }
         $pOffset = intval($pOffset);
         $pCount = intval($pCount);
         $toReturn['query'] = $toReturn['query'] . " LIMIT {$pOffset}, {$pCount}";
         $toReturn['offset'] = true;
         $toReturn['count'] = true;
     }
     if (!$toReturn['isSelect']) {
         $toReturn['isSelect'] = stripos(trim($pQueryString), 'SHOW') === 0 || stripos(trim($pQueryString), 'DESCRIBE') === 0;
     }
     return $toReturn;
 }
コード例 #2
0
 /**
  * Analyse la requète pour qu'elle passe sans encombre dans le driver PDO_OCI
  */
 protected function _parseQuery($pQueryString, $pParameters = array(), $pOffset = null, $pCount = null)
 {
     $toReturn = parent::_parseQuery($pQueryString, $pParameters, $pOffset, $pCount);
     //only for select query
     if ($toReturn['isSelect'] && ($pOffset !== null || $pCount !== null)) {
         $toReturn['query'] = $this->_parseLimit($toReturn['query'], $pOffset, $pCount);
         $toReturn['count'] = true;
         $toReturn['offset'] = true;
     }
     if (!$toReturn['isSelect']) {
         $toReturn['isSelect'] = stripos(trim($pQueryString), 'DESCRIBE') === 0;
     }
     return $toReturn;
 }