SQLite
來自站長百科
SQLite是 D. Richard Hipp 用 C語言編寫的開源嵌入式數(shù)據(jù)庫引擎。它是完全獨立的,不具有外部依賴性。它是作為 PHP V4.3 中的一個選項引入的,構建在 PHP V5 中。SQLite 支持多數(shù) SQL92 標準,可以在所有主要的操作系統(tǒng)上運行,并且支持大多數(shù)計算機語言。SQLite 還非常健壯。其創(chuàng)建者保守地估計 SQLite 可以處理每天負擔多達 100,00 次點擊率的 Web 站點,并且 SQLite 有時候可以處理 10 倍于上述數(shù)字的負載。
SQLite的結構[ ]
SQLite 由以下幾個組件組成:SQL 編譯器、內核、后端以及附件。SQLite 通過利用虛擬機和虛擬數(shù)據(jù)庫引擎(VDBE),使調試、修改和擴展 SQLite 的內核變得更加方便。所有 SQL 語句都被編譯成易讀的、可以在 SQLite 虛擬機中執(zhí)行的程序集。
SQLite特性[ ]
- ACID事務
- 零配置(無需安裝和管理配置)
- 儲存在單一磁盤文件中的一個完整的數(shù)據(jù)庫
- 數(shù)據(jù)庫文件可以在不同字節(jié)順序的機器間自由的共享
- 支持數(shù)據(jù)庫大小至2TB
- 足夠小, 大致3萬行C代碼, 250K
- 比一些流行的數(shù)據(jù)庫在大部分普通數(shù)據(jù)庫操作要快
- 簡單, 輕松的API
- 包含TCL綁定, 同時通過Wrapper支持其他語言的綁定
- 良好注釋的源代碼, 并且有著90%以上的測試覆蓋率
- 獨立: 沒有額外依賴
- Source完全的Open, 你可以用于任何用途, 包括出售它
- 支持多種開發(fā)語言,C, PHP, Perl, Java, ASP.NET,Python
SQLite的相關操作[ ]
使用PHP連接sqlite數(shù)據(jù)庫[ ]
if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) { select * from sqlite_master; echo "數(shù)據(jù)庫連接成功!n "; } else { die($sqliteerror); }
列出所有的表[ ]
if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) { $result = sqlite_array_query($db, 'select * from sqlite_master;'); foreach ($result as $entry) { echo 'talbe name='.$entry['name']." n"; echo 'sql='.$entry['sql']." n"; echo " -------------------------------------------------------------------------------- "; } sqlite_close($db); } else { die($sqliteerror); }}
查詢操作[ ]
if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) { $result = sqlite_array_query($db, 'select name, email from user ', SQLITE_ASSOC); echo "user表查詢結果: n"; echo " n name email n"; foreach ($result as $entry) { echo ' '.$entry['name']." " $entry['email']." n"; } echo ' '; sqlite_close($db); } else { die($sqliteerror); }
增加、刪除、修改操作[ ]
sqlite_query($db, "INSERT INTO user VALUES('user".$i."'" ",'user".$i."@hichina.com')"); sqlite_query($db, "delete from user where user=’user99’"); sqlite_query($db, 'UPDATE user SET email="lilz@hichina.com" where name="user1"');