protected function _pdo(array $config) { assert(array_key_exists('dsn', $config)); assert(array_key_exists('username', $config)); assert(array_key_exists('password', $config)); if (isset($config['logFilename'])) { $verbose = isset($config['logVerbose']) ? $config['logVerbose'] : false; $log = Miao_Log::easyFactory($config['logFilename'], $verbose); } $dsn = $config['dsn']; $user = $config['username']; $pass = $config['password']; $options = isset($config['options']) ? $options : array(); $pdo = new Miaox_PDO($dsn, $user, $pass, $options); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $pdo->setLog($log); return $pdo; }
/** * TODO: change log, make full query. * (non-PHPdoc) * @see PDOStatement::execute() */ public function execute($inputParameters = null) { $this->_pdo->log($this->queryString, 'Query (PDOStatement->execute())'); if (!empty($this->_params)) { $this->_pdo->log(var_export($this->_params, true), 'Parameters'); $this->_params = array(); } if (!empty($inputParameters)) { $this->_pdo->log(var_export($inputParameters, true), 'Parameters'); } $this->_pdo->increment_query_count(); $start = microtime(true); $return = parent::execute($inputParameters); $finish = microtime(true); $this->_pdo->add_exec_time($finish - $start); $this->_pdo->log($this->_pdo->get_exec_time_ms(), 'Time'); return $return; }
public function drop() { $query = 'DROP TABLE IF EXISTS "' . $this->getName() . '"'; $this->_pdo->exec($query); }