|
SQLite |
|
|---|---|
![]() |
|
| 開發 | D. Richard Hipp |
| 最近版本 | 3.6.2 / 2008年8月30日 |
| 作業系統 | 跨平台 |
| 類型 | 開發庫 |
| 許可協議 | 公有領域 |
| 網站 | SQLite |
|
檢視 • 討論 • 編輯 • 歷史
|
|
SQLite是遵守ACID的關聯式資料庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域項目。
不像常見的客戶-伺服器範例,SQLite引擎不是個程序與之通信的獨立進程,而是連接到程序中成為它的一個主要部分。所以主要的通信協議是在程式語言內的直接API調用。這在消耗總量、延遲時間和整體簡單性上有積極的作用。整個資料庫(定義、表、索引和數據本身)都在宿主主機上存儲在一個單一的文件中。它的簡單的設計是通過在開始一個事務的時候鎖定整個數據文件而完成的。
目錄 |
庫實現了多數的SQL-92標準,包括事務,就是代表原子性、一致性、隔離性和持久性的(ACID),觸發器和多數的複雜查詢。不進行類型檢查。你可以把字元串插入到整數列中。例如,某些用戶發現這是使資料庫更加有用的創新,特別是與無類型的腳本語言一起使用的時候。其他用戶認為這是主要的缺點。
多個進程或執行緒可以訪問同一個數據而沒有問題。可以並行的滿足多個讀訪問。只有在其他訪問當前不被服務的時候才能滿足寫訪問;否則寫訪問失敗並帶有一個錯誤代碼(也可以在可配置的超時過期之後自動的重試)。
提供了叫做sqlite的一個獨立程序用來查詢和管理SQLite資料庫文件。 它也充當寫使用SQLite庫的應用的一個例子。
可以從C/C++程序中使用這個庫,還可以獲得對Tcl和一些其他腳本語言的綁定。
在CPAN的DBD::SQLite上有一個Perl的DBI/DBD模塊,它不是到SQLite的介面,而是包括整個SQLite資料庫引擎在其中並不需要任何額外的軟體。
還有一個Python模塊叫做PySQLite。
PHP從PHP5.0開始包含了SQLite,但是自5.1版之後開始成為一個延伸函式庫。SQLite能與PHP4一起工作但不包含在其中。
Rails2.0.3將預設的資料庫配置改為了SQLite 3
SQLite亦可以作為桌面資料庫使用,以下為第三方SQLite的GUI軟體。例如,
| 資料庫管理系統(DBMS) ( 檢視 • 討論 • 編輯 • 歷史 ) | |
|
概念 |
|
|
Objects |
SQL |
| 資料庫管理系統的實施 | |
|
實施類型 |
|
|
資料庫產品 |
資料庫成分 |
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History