/** * 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; }
/** * 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; }