📄 sqlite2.class.php
字号:
<?phpinclude_once dirname(__FILE__) . '/sqlite.class.php';class sqlite2 extends sqlite { function sqlite2($dbPath) { $this->dbVersion = 2; if($dbPath == ':memory:') { $this->readOnly = false; } else { $this->readOnly = !is_writable($dbPath); } parent::sqlite($dbPath); $this->connect($dbPath); } function connect($dbPath) { if(DEBUG) { if($dbPath == ':memory:') $this->connId = sqlite_popen($dbPath, 0666, $this->error); else $this->connId = sqlite_open($dbPath, 0666, $this->error); } else { if($dbPath == ':memory:') $this->connId = @sqlite_popen($dbPath, 0666, $this->error); else $this->connId = @sqlite_popen($dbPath, 0666, $this->error); } return $this->connId; } function getError($errorCode = null) { if(!$this->error) $this->error = sqlite_last_error($this->connId); if($errorCode == null) $errorCode = $this->error; $this->errorMessage = sqlite_error_string($errorCode); return $this->errorMessage; } function getErrorMessage() { return $this->errorMessage; } function query($sqlString, $buffered = true, $assign = true) { if(substr(trim($sqlString), -1) != ';') $sqlString .= ';'; if($buffered) { if(DEBUG) { $resId = sqlite_query($this->connId, $sqlString); } else { $resId = @sqlite_query($this->connId, $sqlString); } } else { if(DEBUG) $resId = sqlite_unbuffered_query($this->connId, $sqlString); else $resId = @sqlite_unbuffered_query($this->connId, $sqlString); } if($assign) $this->resId = $resId; return $resId; } function array_query($sqlString, $result_type=SQLITE_BOTH, $decode_binary=true) { if(DEBUG) return sqlite_array_query($this->connId, $sqlString, $result_type, $decode_binary); else return @sqlite_array_query($this->connId, $sqlString, $result_type, $decode_binary); } function num_rows($resId = null) { if($resId == null) $resId = $this->resId; if(DEBUG) $out = sqlite_num_rows($resId); else $out = @sqlite_num_rows($resId); return $out; } function fetch_single($resId=null, $result_type=SQLITE_BOTH) { if($resId == null) $resId = $this->resId; if(DEBUG) $out = sqlite_fetch_string($resId,$result_type); else $out = @sqlite_fetch_string($resId,$result_type); return $out; } function fetch_array($resId=null, $result_type=SQLITE_BOTH,$decode_binary=true) { if($resId == null) $resId = $this->resId; if(DEBUG) $out = sqlite_fetch_array($resId,$result_type, $decode_binary); else $out = @sqlite_fetch_array($resId,$result_type, $decode_binary); return $out; } function last_insert_id() { return sqlite_last_insert_rowid($this->connId); } function changes() { if(DEBUG) $out = sqlite_changes($this->connId); else $out = @sqlite_changes($this->connId); return $out; } function num_fields($resId = null) { if($resId == null) $resId = $this->resId; if(DEBUG) $out = sqlite_num_fields($resId); else $out = @sqlite_num_fields($resId); return $out; } function field_name($resId = null, $index) { if($resId == null) $resId = $this->resId; if(DEBUG) $out = sqlite_field_name($resId, $index); else $out = @sqlite_field_name($resId, $index); return $out; } function create_function($function_name, $callback, $num_arg=null) { if(DEBUG) return sqlite_create_function($this->connId, $function_name, $callback, $num_arg); else return @sqlite_create_function($this->connId, $function_name, $callback, $num_arg); } function create_aggregate($function_name, $step_func, $finalize_func, $num_args=null) { if(DEBUG) return sqlite_create_aggregate($this->connId, $function_name, $step_func, $finalize_func, $num_args); else return @sqlite_create_aggregate($this->connId, $function_name, $step_func, $finalize_func, $num_args); } function sqlite_version() { return sqlite_libversion(); } function close() { if(DEBUG) return sqlite_close($this->connId); else return @sqlite_close($this->connId); } function sqlitem_busy_timeout($milliseconds=0) { if(DEBUG) $out = sqlite_busy_timeout($this->connId, $milliseconds); else $out = @sqlite_busy_timeout($this->connId, $milliseconds); return $out; } function beginTransaction() { $this->query('BEGIN TRANSACTION;', false, false); } function commitTransaction() { $this->query('COMMIT TRANSACTION;', false, false); } function rollBackTransaction() { $this->query('ROLLBACK TRANSACTION;', false, false); }}?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -