SQLite和Access,二者都是常用的輕型關(guān)系型數據庫系統。在DB-Engines的數據庫排名中,二者排名都比較靠前,名次也(yě)很接近,說(shuō)明使用兩種數據庫的人(rén)群還都不少,很多朋(péng)友在二者之間(jiān)難以選擇。
SQLite:我雖渺小卻鋒利頑強!
SQLite,是一(yī)款輕型的,遵守ACID的關(guān)系型數據庫管理(lǐ)系統,她包含在一(yī)個(gè)相對小的C庫中。主要為(wèi)嵌入式應用設計,在很多嵌入式産品中應用廣泛,她占用資源非常的低(dī),隻需要幾百K的内存就(jiù)夠了(le)。
筆者早年用過很多年Access,主要用作(zuò)本地數據存儲,對Access的品性和弊端還算(suàn)了(le)解。後來(lái)毅然決然的換成了(le)SQLite使用至今。作(zuò)為(wèi)輕型數據庫,SQLite做到了(le)輕如(rú)鴻毛卻又鋒利頑強。
SQLite數據庫就(jiù)是一(yī)個(gè)文件。由于SQLite本身(shēn)是C寫的,而且體(tǐ)積很小、效率極高,所以,經常被集成到各種應用程序中,目前Android和iOS都将SQLite作(zuò)為(wèi)内置數據庫。
SQLite支持各種32位和64位體(tǐ)系的硬件平台,也(yě)能(néng)在Windows、Linux、BSD、Android等軟件平台中運行。同時(shí)SQLite支持ANSI SQL92中的大多數标準,提供了(le)對子(zǐ)查詢、視(shì)圖、觸發器(qì)等機制的支持。
下(xià)圖是SQLite和SQL Server及Acess的性能(néng)測試對比:
從上(shàng)表可看出,SQLite性能(néng)碾壓Access不在話(huà)下(xià)!
Access:有微軟加持縱然雞肋應者雲集!
Access是由微軟發布的輕型關(guān)系數據庫管理(lǐ)系統。它結合了(le) MicrosoftJet Database Engine和圖形用戶界面兩項特點,是 Microsoft Office辦公系統可選套件之一(yī)。
Access既是Office套件,與Excel、Word融合相當好(hǎo)(hǎo),同時(shí)Access支持Visual Basic宏語言,您甚至可以在Access中直接開發簡單系統,這(zhè)算(suàn)是Access相比SQLite的最大優勢。
當然,Access既然是Office套件,如(rú)果您想要使用Access環境來(lái)管理(lǐ)維護Access,就(jiù)需要花錢(qián)購(gòu)買了(le)。但(dàn)如(rú)果您在開發的系統中調用Access數據庫,配置好(hǎo)(hǎo)調用環境即可,并不一(yī)定需要購(gòu)買Office。
SQLite和Access的優缺點綜合對比
下(xià)面盤點下(xià)二者的優缺點,您就(jiù)豁然開朗了(le)!
SQLite的優點和缺點:
優點:
1、支持Limit語句,支持數據自動分(fēn)頁
2、支持Insert返回自動遞增主鍵的ID
3、查詢性能(néng)和效率高
4、支持壓縮命令
5、開放(fàng)源代碼,可以内嵌到dll中,發布簡單
6、跨平台,數據庫具有很強的兼容性
7、支持動态建立數據庫功能(néng)
8、事(shì)務(wù)處理(lǐ)
缺點:
1、缺少強勁的免費查詢分(fēn)析器(qì)GUI。免費的用過SQLiteStudio,還不錯!
Access的優點和缺點
優點:
1、直觀的查詢分(fēn)析器(qì)GUI,維護簡單方便
2、性能(néng)一(yī)般,但(dàn)比較成熟和穩定
缺點:
1、不支持Limit命令,分(fēn)頁難做到
2、不支持Insert返回遞增的ID
3、并發性能(néng)差,最大并發數50,隻有一(yī)個(gè)連接可修改數據
4、不支持壓縮數據庫命令
5、不支持動态建立數據庫
6、不支持跨平台,這(zhè)是硬傷
通過對比可以得出這(zhè)樣的結論:
SQLite性能(néng)碾壓Access,但(dàn)Access有微軟加持,雖為(wèi)雞肋卻獲得滋潤,看來(lái)巨頭的支持有多重要!