/** * Executa uma query independente da classe connector que esteja sendo usada * @param type $query * @return type * @throws Exception */ private function _query($query, $db) { if ($db === false) { $db = ModelAbstract::$db; } try { $start_time = microtime(TRUE); $statement = ModelAbstract::$db->query($query); $res = $statement->execute(); ModelAbstract::logQuery($query, $start_time, true, '0', '', get_class($this), $db); return $res->getResource(); } catch (Exception $err) { $errorMessage = $err->getMessage(); if (DEBUG) { $errorMessage .= "<br>" . $res->userinfo; } ModelAbstract::logQuery($query, $start_time, false, 0, $errorMessage, get_class($this), $db); throw new Exception($err->getMessage()); } }