PHP5環境下采用Sqlite數據庫開發小小總結
最近花了10多天重新寫了泡菜博客,采用了PHP5+SQLITE技術。原因是MYSQL管理非常麻煩,而且還得花錢另外買數據庫。
sqlite 是一款輕量級的、基于文件的嵌入式數據庫,2000年就已經誕生,經過7年多的發展,直到今天已經成為最流行的嵌入式數據庫,包括Google在內的公司在其桌面軟件中亦使用 sqlite 存儲用戶數據。由此可以看出,已經沒有任何理由去懷疑sqlite的穩定性了。(此段載自藍雨設計)
那么如何在PHP5中使用呢?PHP5中有2種連接sqlite的方法。一種是默認提供的,另一種是PDO類。默認的只支持sqlite2,但是PDO可以間接支持sqlite3。下面是我寫的簡單的PDO類可以兼容2個版本。
以下為引用的內容:class SQLite{ function __construct($file){ try{ $this->Connection=new PDO('sqlite2:'.$file); }catch(PDOException $e){ try{ $this->Connection=new PDO('sqlite:'.$file); }catch(PDOException $e){ exit('error!'); } } } function __destruct(){ $this->Connection=null; } function Query($SQL){ return $this->Connection->Query($SQL); } function Execute($SQL){ return $this->Query($SQL)->fetch(); } function RecordArray($SQL){ return $this->Query($SQL)->fetchAll(); } function RecordCount($SQL){ return count($this->RecordArray($SQL)); } function RecordLastID(){ return $this->Connection->lastInsertId(); } }
然后實例化,在實例化中如果數據庫存在就自動打開,不存在就會自動創建數據庫。
以下為引用的內容:$DB=new SQLite('blog.db')//這個數據庫文件名字任意
創建數據庫表
以下為引用的內容:$DB->Query('create table test(id integer primary key,title varchar(50)');
接下來添加數據
以下為引用的內容:$DB->Query('insert into test(title) values('泡菜')');$DB->Query('insert into test(title) values('藍雨')');$DB->Query('insert into test(title) values('Ajan')');$DB->Query('insert into test(title) values('傲雪藍天')')
之后就是如何讀取數據了。也就是循環。
以下為引用的內容:$SQL='select title from test order by id desc';foreach($DB->Query($SQL) as $RS){ echo $RS['title'];}
對于企業來說SQLITE可能會小點,但是對于個人來說它確實是個好東西,可移植性非常好。
本人水平有限,如果以上內容有錯誤請指正。謝謝!