发新话题
打印

SQLite 管理工具 phpSQLiteAdmin

本主题由 admin 于 2007-11-4 12:09 移动

SQLite 管理工具 phpSQLiteAdmin

SQLite 管理工具 phpSQLiteAdmin

QLiteManager虽然强大,但是对环境还是有一些要求,同时程序也过于庞大(2M?)
有一个替换的方案:phpSQLiteAdmin
目前版本是0.2,只有不到100K。配置部署也非常简单,放到Web的目录里面就可以了。







下面是一些实例代码,最常用的几种方法。分别实现: 执行非查询SQL,返回全部查询,逐条返回查询。
echo "PDO";try { $conn = new PDO('sqlite2:jimmy.sqlite'); $string = 'working...
';echo $conn->quote($string);echo 'PDO Connection Ok','
'; $conn->beginTransaction(); $conn->exec("INSERT INTO test values(null,'pdo','pdo_test...')"); echo $conn->commit();echo 'A Transaction: Insert Data ok','
'; } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); } echo 'get all data','
';$query=$conn->query('SELECT * FROM test'); $result=$query->fetchAll();trace( $result); echo 'get data line by line', '
n';$query = $conn->prepare("SELECT * FROM test where id > ?");if ($query->execute(array('1'))) {while ($row = $query->fetch()) {trace($row);}}PDO模式下注意,官方资料new PDO('sqlite:xxx');
有误,要声明为:$conn = new PDO('sqlite2:jimmy.sqlite') 才能工作。
echo "SQLite";$db = new SQLiteDatabase('jimmy2');$db->query("INSERT INTO test VALUES(null,'sqlite','sqlite class')");echo 'get data all','
';$result = $db->arrayQuery('SELECT * FROM test LIMIT 25', SQLITE_ASSOC);foreach ($result as $entry) {echo 'title: ' . $entry['title'] . ' content: ' . $entry['content'];}echo '
get data line by line','
';$result = $db->query("SELECT * FROM test LIMIT 25");while($row=$result->fetch()){print_r($row);}echo "Zend";require_once 'Zend.php';Zend::loadClass('Zend_Db');$params = array ('dbname' => 'jimmy.sqlite','sqlite2' => TRUE);$db = Zend_Db::factory('PDO_SQLITE', $params);try { $db->beginTransaction();$db->query("INSERT INTO test VALUES(null,'sqlite','zend sqlite')"); echo "
Insert OK ".$db->lastInsertId();; $db->commit();} catch (Exception $e) { $db->rollBack(); echo $e->getMessage();}$result = $db->fetchAll("SELECT * FROM test");trace($result);$query = $db->query("SELECT * FROM test");while($row=$query->fetch()){trace($row);}Pear的省略了,不是今后的方向。
在这里我并没有使用API方式,具体使用API可以参照下表:
MySQL
SQLite
mysqli_connect( )
sqlite_connect( )
mysqli_close( )
sqlite_close( )
mysqli_query( )
sqlite_query( )
mysqli_fetch_row( )
sqlite_fetch_array( )
mysqli_fetch_assoc( )
sqlite_fetch_array( )
mysqli_num_rows( )
sqlite_num_rows( )
mysqli_insert_id( )
sqlite_last_insert_rowid( )
mysqli_real_escape_string( )
sqlite_escape_string( )

TOP

发新话题