首 頁
手機版

Sqlite3(小型關(guān)系型數(shù)據(jù)庫) v3.17.0官方版

SQLite3是sqlite的第三個主要版本,它是一款輕型數(shù)據(jù)庫,不同于其他大部分的SQL數(shù)據(jù)庫引擎。SQLite3易于管理、易于使用、易于嵌入其他大型程序、十分穩(wěn)定、易于維護和配置。SQLite3不適合用于企業(yè)級的數(shù)據(jù)庫引擎,它的設(shè)計理念也不是奔著企業(yè)級去的。因為它的小巧、簡單,它省略了一些人們認為比較有用的特性,例如高并發(fā)性、嚴格的存取控制、豐富的內(nèi)置功能、存儲過程、復(fù)雜的SQL語言特性、XML以及Java的擴展,超大的萬億級別的數(shù)據(jù)測量等等。但是如果你不需要使用上述的這些特性,那么SQLite3對你而言就非常合適了。

SQLite3無需安裝和管理復(fù)雜的配置,最大支持2tb的單個庫文件,比目前流行的大多數(shù)數(shù)據(jù)庫對數(shù)據(jù)的操作都要快(比MySQL快2倍,PostgreSQL快20倍),支持視圖,子查詢,觸發(fā)器等。數(shù)據(jù)庫文件可以在不同字節(jié)順序的機器間自由共享等優(yōu)點。當(dāng)你更看中簡單的管理、使用和維護數(shù)據(jù)庫,而不是那些企業(yè)級數(shù)據(jù)庫提供的不計其數(shù)的復(fù)雜功能的時候,使用SQLite3是一個比較明智的選擇。

SQLite適合使用場景

網(wǎng)站

作為數(shù)據(jù)庫引擎SQLite適用于中小規(guī)模流量的網(wǎng)站(也就是說,99.9%的網(wǎng)站)。SQLite可以處理多少網(wǎng)站流量在于網(wǎng)站的數(shù)據(jù)庫有多大的壓力。通常來說,如果一個網(wǎng)站的點擊率少于100000次/天的話,SQLite是可以正常運行的。100000次/天是一個保守的估計,不是一個準確的上限。事實證明,即使是10倍的上述流量的情況下SQLite依然可以正常運行。

嵌入式設(shè)備和應(yīng)用軟件

因為SQLite數(shù)據(jù)庫幾乎不需要管理,因此對于那些無人值守運行或無人工技術(shù)支持的設(shè)備或服務(wù),SQLite是一個很好的選擇。SQLite能很好的適用于手機,PDA,機頂盒,以及其他儀器。作為一個嵌入式數(shù)據(jù)庫它也能夠很好的應(yīng)用于客戶端程序。

應(yīng)用程序文件格式

SQLite作為桌面應(yīng)用程序的本地磁盤文件格式取得了巨大成功。例如金融分析工具、CAD包、檔案管理程序等等。一般的數(shù)據(jù)庫打開操作需要調(diào)用sqlite3_open()函數(shù),并且標(biāo)記一個顯式本地事務(wù)的起始點(BEGINTRANSACTION)來保證以獨占的方式得到文件的內(nèi)容。文件保存將執(zhí)行一個提交(COMMIT)同時標(biāo)記另一個顯式本地事務(wù)起始點。這種事務(wù)處理的作用就是保證對于應(yīng)用程序數(shù)據(jù)文件的更新是原子的、持久的、獨立的和一致的。數(shù)據(jù)庫里可以加入一些臨時的觸發(fā)器,用來把所有的改變記錄在一張臨時的取消/重做日志表中。當(dāng)用戶按下取消/重做按鈕的時候這些改變將可以被回滾。應(yīng)用這項技術(shù)實現(xiàn)一個無限級的取消/重做功能只需要編寫很少的代碼。

替代某些特別的文件格式

許多程序使用fopen(),fread(),或fwrite()函數(shù)創(chuàng)建和管理一些自定義的文件用來保存數(shù)據(jù)。使用SQLite替代這些自定義的文件格式將是一種很好的選擇。

內(nèi)部的或臨時的數(shù)據(jù)庫

對于那些有大量的數(shù)據(jù)需要用不同的方式篩選分類的程序,相對于編寫同樣功能的代碼,如果你把數(shù)據(jù)讀入一個內(nèi)存中的SQLite數(shù)據(jù)庫,然后使用連接查詢和ORDERBY子句按一定的順序和排列提取需要的數(shù)據(jù),通常會更簡單和快速。按照上述的方法使用內(nèi)嵌的SQLite數(shù)據(jù)庫將會使程序更富有靈活性,因為添加新的列或索引不用重寫任何查詢語句。

命令行數(shù)據(jù)集分析工具

有經(jīng)驗的SQL用戶可以使用SQLite命令行程序去分析各種混雜的數(shù)據(jù)集。原是數(shù)據(jù)可以從CSV(逗號分隔值文件)文件中導(dǎo)入,然后被切分產(chǎn)生無數(shù)的綜合數(shù)據(jù)報告??赡艿糜梅òňW(wǎng)站日志分析,運動統(tǒng)計分析,編輯規(guī)劃標(biāo)準,分析試驗結(jié)果。當(dāng)然你也可以用企業(yè)級的客戶端/服務(wù)器數(shù)據(jù)庫來做同樣的事情。在這種情況下使用SQLite的好處是:SQLite的部署更為簡單并且結(jié)果數(shù)據(jù)庫是一個單獨的文件,你可以把它存儲在軟盤或者優(yōu)盤或者直接通過email發(fā)給同事。

在Demo或測試版的時候作為企業(yè)級數(shù)據(jù)庫的替代品

如果你正在編寫一個使用企業(yè)級數(shù)據(jù)庫引擎的客戶端程序,使用一個允許你連接不同SQL數(shù)據(jù)庫引擎的通用型數(shù)據(jù)庫后臺將是很有意義的。其更大的意義在于將SQLite數(shù)據(jù)庫引擎靜態(tài)的連接到客戶端程序當(dāng)中,從而內(nèi)嵌SQLite作為混合的數(shù)據(jù)庫支持。這樣客戶端程序就可以使用SQLite數(shù)據(jù)庫文件做獨立的測試或者驗證。

數(shù)據(jù)庫教學(xué)

因為SQLite的安裝和使用非常的簡單(安裝過程幾乎忽略不計,只需要拷貝SQLite源代碼或sqlite。exe可執(zhí)行文件到目標(biāo)主機,然后直接運行就可以)所以它非常適合用來講解SQL語句。同學(xué)們可以非常簡單的創(chuàng)建他們喜歡的數(shù)據(jù)庫,然后通過電子郵件發(fā)給老師批注或打分。對于那些感興趣怎樣實現(xiàn)一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)的高層次的學(xué)生,按照模塊化設(shè)計且擁有很好的注釋和文檔的SQLite源代碼,將為他們打下良好的基礎(chǔ)。這并不是說SQLite就是如何實現(xiàn)其他數(shù)據(jù)庫引擎的精確模型,但是很適合學(xué)生們了解SQLite是如何快速工作的,從而掌握其他數(shù)據(jù)庫系統(tǒng)的設(shè)計實現(xiàn)原則。

試驗SQL語言的擴展

SQLite簡單且模塊化的設(shè)計使得它可以成為一個用來測試數(shù)據(jù)庫語言特性或新想法的優(yōu)秀的原型平臺。

SQLite命用命令及語法

新建數(shù)據(jù)庫:

sqlite3 dbname

檢查dbname是否存在,如果不存在就創(chuàng)建并進入數(shù)據(jù)庫(如果直接退出,數(shù)據(jù)庫文件不會創(chuàng)建),如果已經(jīng)存在直接進入數(shù)據(jù)庫 對數(shù)據(jù)庫進行操作。

sqlite中命令:

以.開頭,大小寫敏感(數(shù)據(jù)庫名稱是大小寫不敏感的)

.exit

.help 查看幫助 針對命令;

.database 顯示數(shù)據(jù)庫信息;包含當(dāng)前數(shù)據(jù)庫的位置;

.tables 或者 .table 顯示表名稱  沒有表則不顯示;

.schema 命令可以查看創(chuàng)建數(shù)據(jù)對象時的SQL命令;

.schema databaseobjectname查看創(chuàng)建該數(shù)據(jù)庫對象時的SQL的命令;如果沒有這個數(shù)據(jù)庫對象就不顯示內(nèi)容,不會有錯誤提示;

.read FILENAME 執(zhí)行指定文件中的SQL語句;

.headers on/off  顯示表頭 默認off;

.mode list|column|insert|line|tabs|tcl|csv   改變輸出格式;

接下來多多小編來創(chuàng)建一個db文件,首先我們打開cmd,進入sqlite3.exe所在的目錄(就是你放壓縮文件的地方),輸入“sqlite3.exe  test.db”這樣就在當(dāng)前目錄創(chuàng)建好了一個“test.db”數(shù)據(jù)庫了。

輸入“.help”即可查看所有命令。詳細的操作可以仔細看一下SQLite命用命令及語法,SQLite3支持標(biāo)準SQL語言。

更新日志

sqlite 3.17.0更新日志

R-Tree擴展提高了25%的性能。

在可用時使用編譯器內(nèi)置函數(shù)(例如:__builtin_bswap32()或_byteswap_ulong())進行字節(jié)交換。

使用sqlite3_blob鍵/值訪問對象而不是SQL從R-Tree節(jié)點中拉出內(nèi)容

其他各種增強功能,如循環(huán)展開。

添加SQLITE_DEFAULT_LOOKASIDE編譯時選項。

將默認后備大小從512,125增加到1200,100,因為這樣可以提供更好的性能,而每個連接只添加56KB的額外內(nèi)存。對內(nèi)存敏感的應(yīng)用程序可以在編譯時,啟動時或運行時恢復(fù)舊的默認值。

使用編譯器內(nèi)置__builtin_sub_overflow(),__builtin_add_overflow()和__builtin_mul_overflow()(如果可用)。(使用SQLITE_DISABLE_INTRINSIC編譯時選項可以省略所有編譯器內(nèi)建函數(shù)。)

添加了SQLITE_ENABLE_NULL_TRIM編譯時選項,這可能會導(dǎo)致某些應(yīng)用程序的數(shù)據(jù)庫文件大大減小,從而有可能與舊版本的SQLite不兼容。

將SQLITE_DEFAULT_PCACHE_INITSZ從100更改為20,以提高性能。

添加了SQLITE_UINT64_TYPE編譯時選項作為SQLITE_INT64_TYPE的模擬。

在單遍而不是兩遍中執(zhí)行一些UPDATE操作。

增強會話擴展以支持WITHOUTROWID表。

修復(fù)了具有數(shù)十萬行的多行VALUES子句創(chuàng)建視圖時的性能問題和潛在的堆棧溢出。

添加了sha1.c擴展。

在命令行shell中,增強“.mode”命令,以便它恢復(fù)模式“l(fā)ine”,“l(fā)ist”,“column”和“tcl”的默認列和行分隔符。

增強SQLITE_DIRECT_OVERFLOW_READ選項,以便它在WAL模式下工作,只要正在讀取的頁面不在WAL文件中。

增強LEMON解析器生成器,以便它可以將解析器對象存儲為堆棧變量,而不是從堆分配空間,并利用合并中的增強。

其他性能改進。使用大約6.5%的CPU周期。

收起介紹展開介紹
  • sqlite可視化工具
更多 (9個) >>sqlite可視化管理工具大全 SQLite是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領(lǐng)域項目。它的設(shè)計目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,使用非常廣泛,支持Windows/Linux/Unix等等主流的操作系統(tǒng)。在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了,SQLite可視化管理工具,允許用戶在 SQLite 服務(wù)器上執(zhí)行創(chuàng)建、編輯、復(fù)制、提取等操作,小編為大家整理了sqlite可視化管理工具大全,這些都是市面上好用的sqlite可視化工具,有需求的朋友可以自行下載!
  • 下載地址
Sqlite3(小型關(guān)系型數(shù)據(jù)庫) v3.17.0官方版

有問題? 點此報錯

發(fā)表評論

0條評論