SQLite


SQLite (简体)

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和一些其他腳本語言的綁定。

CPANDBD::SQLite上有一個Perl的DBI/DBD模塊,它不是到SQLite的介面,而是包括整個SQLite資料庫引擎在其中並不需要任何額外的軟體。

還有一個Python模塊叫做PySQLite。

PHP從PHP5.0開始包含了SQLite,但是自5.1版之後開始成為一個延伸函式庫。SQLite能與PHP4一起工作但不包含在其中。

Rails2.0.3將預設的資料庫配置改為了SQLite 3

SQLite管理客戶端

SQLite亦可以作為桌面資料庫使用,以下為第三方SQLite的GUI軟體。例如,

  • SQLiteMan,使用QT開發的一個SQLite客戶端,支持多語言、跨平台。SQLiteMan
  • SQLite Manager, 以 火狐瀏覽器的擴展形式提供的SQLite客戶端。
  • SQLite Database Browser, a graphical client to access SQLite databases
  • SqlPro SQL Client, another graphical client to work with SQLite databases

參見

  • 關係資料庫列表
  • 關係資料庫比較

外部連結


資料庫管理系統(DBMS)檢視  討論  編輯  歷史 )

概念
數據庫 • 數據庫模型 • Database storage • 關係模型 • 分散式資料庫 • ACID • 空值
關係資料庫 • 關係代數 • 關係演算 • 資料庫正規化 • 參照完整性 • 關係資料庫管理系統 
主鍵, 外來鍵, 代理主鍵, 超鍵值, 候選鍵 

Objects
觸發器 • 視圖 • 資料庫表 • 指標 • Log • Transaction • 資料庫索引 
存儲程序 • Partition

SQL
Select • Insert • Update • Merge • Delete • Join • Union • Create • Drop
  Begin work • Commit • Rollback • Truncate • Alter

資料庫管理系統的實施

實施類型
Relational • Flat file • Deductive • Dimensional • 階層式 • 對象資料庫 • Object relational • Temporal • XML data stores

資料庫產品
對象型 (對比) • 關係型 (對比)

資料庫成分
Query language • Query optimizer • Query plan • ODBC • JDBC


! __







Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History