sqlite 官方网站:
php 官方网站文档:php 操作sqlite3 文本数据库的类为: SQLite3
1. 声明一个sqlite3 文本数据库对像
$db = new SQLite3('mysqlitedb.db');
2. 执行一个对文本数据库的查询
SQLite3::query()
$re = $db->query('select name from table');
while ($row = $re->fetchArray()){ var_dump($row); //print_r($row); }执行一个查询并返回一个结果
SQLite3::querySingle()
$db = new SQLite3('mysqlitedb.db');
print_r ($db->querySingle('select * from table', true);3. 对文本数据库执行: INSERT, UPDATE, DELETE 操作
$db = new SQLite3('mysqlitedb.db');
$db->exe ('insert into table values ('name', 'teststring'));4. 关闭文本数据库
$db = new SQLite3('mysqlitedb.db');
$db->close();5. 如果对sqlite 数据做INSERT, UPDATE, DELETE 操作后,操作了多少行数据
SQLite3::changes (void)
$db->changes();$db = new SQLite3('mysqlitedb.db');
$query = $db->exe ('UPDATE counter SET views=0 WHERE page=”test”'); if ($query) { echo “Number of rows modified: “, $db->changes(); }6. 如果操作sqlite 语句执行出错 ,取得出错信息及出错代码
SQLite3::lastErrorMsg()
SQLite3::lastErrorCode()$db = new SQLite3('mysqlitedb.db');
$query = $db->exe ('insert into table values (2, “a”, “b”,”c”)'); if (!$query) { echo “error message: ”. $db->lastErrorMsg(); echo “error code: “. $db->lastErrorCode(); }else{ return $query->changes(); }----------------------- Page 2-----------------------
7. 返回操作sqlite 时插入数据库中的最近插入行的ID
SQLite3::lastInsertRowID (void)
8. 返回操作sqlite 时得到的关联或数字索引数组的结果行
SQLite3Result::fetchArray (SQLITE3_ASSOC|SQLITE3_NUM|SQLITE3_BOTH)
SQLITE3_ASSOC 返回一个以列名索引的数组 SQLITE3_NUM 返回一个以数字为索引的数组 SQLITE3_BOTH 返回一个以列名索引和数字索引的数组 默认为: SQLITE3_ASSOC例一:
$db = new SQLite3('mysqlitedb.db'); $sql = “select user_id, username from tbl_user”; $result = $db->query($sql); $row = array(); $i = 0;while ($res = $result->fetchArray(SQLITE3_ASSOC)){
if (!isset($res['user_id'])) continue; $row[$i]['user_id'] = $res['user_id']; $row[$i]['username'] = $res['username']; $i++; } print_r($row);例二:
$db = new SQLite3('mysqlitedb.db'); $re = $db->query('select * from tbl_user'); while ($res = $re->fetchArray(SQLITE3_ASSOC)){ if (!isset($res['name'])) continue; echo $res['name'] . “=>”. $res['password'] .”\n”; }9. 关闭一个结果集
SQLite3Result::finalize(void)
$res->finalize()
10. 返回结果集的列数
SQLite3Result::numColumns (void)
$sql = “select * from tbl_name”;
$res = $db->query($sql) or die (“Error in query: <span style='color:red;'> $sql </span>”); $num_columns = $res->numColumns();