SQLite 教程


閱讀(578.9k) 收藏 (476)

手冊簡介

一款輕型的數(shù)據(jù)庫。

手冊說明

201610251605453156

SQLlite是什么?

SQLite,是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領(lǐng)域項(xiàng)目。它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時能夠跟很多程序語言相結(jié)合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源的世界著名數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。SQLite第一個Alpha版本誕生于2000年5月。 至2015年已經(jīng)有15個年頭,SQLite也迎來了一個版本 SQLite 3已經(jīng)發(fā)布。


SQLlite工作原理是什么?

不像常見的客戶-服務(wù)器范例,SQLite引擎不是個程序與之通信的獨(dú)立進(jìn)程,而是連接到程序中成為它的一個主要部分。所以主要的通信協(xié)議是在編程語言內(nèi)的直接API調(diào)用。這在消耗總量、延遲時間和整體簡單性上有積極的作用。整個數(shù)據(jù)庫(定義、表、索引和數(shù)據(jù)本身)都在宿主主機(jī)上存儲在一個單一的文件中。它的簡單的設(shè)計(jì)是通過在開始一個事務(wù)的時候鎖定整個數(shù)據(jù)文件而完成的。


SQLlite有什么功能和特性?

1.ACID事務(wù)

2.零配置 – 無需安裝和管理配置

3.儲存在單一磁盤文件中的一個完整的數(shù)據(jù)庫

4.數(shù)據(jù)庫文件可以在不同字節(jié)順序的機(jī)器間自由的共享

5.支持?jǐn)?shù)據(jù)庫大小至2TB

6.足夠小, 大致13萬行C代碼, 4.43M

7.比一些流行的數(shù)據(jù)庫在大部分普通數(shù)據(jù)庫操作要快

8.簡單, 輕松的API

9.包含TCL綁定, 同時通過Wrapper支持其他語言的綁定

10.良好注釋的源代碼, 并且有著90%以上的測試覆蓋率

11.獨(dú)立: 沒有額外依賴

12.源碼完全的開源, 你可以用于任何用途, 包括出售它

13.支持多種開發(fā)語言,C, C++, PHP, Perl, Java, C#,Python, Ruby等


使用SQLlite有哪些注意事項(xiàng)?

在確定是否在應(yīng)用程序中使用 SQLite 之前,應(yīng)該考慮以下幾種情況:

有沒有可用于 SQLite 的網(wǎng)絡(luò)服務(wù)器。從應(yīng)用程序運(yùn)行位于其他計(jì)算機(jī)上的 SQLite 的惟一方法是從網(wǎng)絡(luò)共享運(yùn)行。這樣會導(dǎo)致一些問題,像 UNIX? 和 Windows? 網(wǎng)絡(luò)共享都存在文件鎖定問題。還有由于與訪問網(wǎng)絡(luò)共享相關(guān)的延遲而帶來的性能下降問題。

SQLite 只提供數(shù)據(jù)庫級的鎖定。雖然有一些增加并發(fā)的技巧,但是,如果應(yīng)用程序需要的是表級別或行級別的鎖定,那么 DBMS 能夠更好地滿足您的需求。

正如前面提到的,SQLite 可以支持每天大約 100,00 次點(diǎn)擊率的 Web 站點(diǎn) —— 并且,在某些情況下,可以處理 10 倍于此的通信量。對于具有高通信量或需要支持龐大瀏覽人數(shù)的 Web 站點(diǎn)來說,應(yīng)該考慮使用 DBMS。

SQLite 沒有用戶帳戶概念,而是根據(jù)文件系統(tǒng)確定所有數(shù)據(jù)庫的權(quán)限。這會使強(qiáng)制執(zhí)行存儲配額發(fā)生困難,強(qiáng)制執(zhí)行用戶許可變得不可能。

SQLite 支持多數(shù)(但不是全部)的 SQL92 標(biāo)準(zhǔn)。不受支持的一些功能包括完全觸發(fā)器支持和可寫視圖。


附加資料

SQLite官網(wǎng):http://www.sqlite.org/

SQLite官方文檔:http://www.sqlite.org/docs.html

SQLite教程:http://www.hgci.cn/sqlite/sqlite-intro.html

SQLite下載:http://www.sqlite.org/index.html


更新記錄

在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號