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