2011-04-19 82 views
5

我需要使用輕量級數據庫,因爲我的應用程序資源有限。用於C++的輕量級數據庫系統

所以我正在尋找一個輕量級的數據庫,我可以使用C++,這是易於管理,快速檢索數據和使用有限的資源量。

我在網上找到了SqlLite。但在我開始實施我的項目之前,我想獲得關於此主題的建議。

任何幫助將不勝感激。

回答

10

在我看來,您已經找到了您的最佳選擇:SQLite

你可以在技術上使用一些更簡單的文件系統,如隨機文件訪問。但是你會錯過兩個關鍵點:

  1. 您的數據
  2. 一個真棒語言輕鬆創建指標的獲取和處理數據:SQL

的SQLite只會增加幾個千字節到您的可執行文件並且非常輕便。另外,它的API相對容易使用。

+2

+1我也打算說sqlite。 – JeremyP 2011-04-19 12:16:53

+0

你知道一個好的C++接口嗎?我只見過C-ish。 – 2011-04-19 12:27:30

+1

如果我是你,我只會使用C接口。你可以從C++完全做到這一點。如果你絕對想要和需要一個C++接口,你可以看一下SQLite ++:http://sqlitepp.berlios.de/ – 2011-04-19 12:32:04

5

SQLite絕對是最好的選擇之一,特別是如果你需要適當的SQL支持。對於較小的事物,Berkeley DB也可能值得考慮。

+0

如果Bekeley DB在場(即你只需要鍵值數據存儲) - 任何許多NoSQL數據存儲可供您使用(OP) - 東京內閣/東京暴君,Voldemort,Cassandra,Riak,memcached(它不是一個數據庫,而是一個緩存)等等。這個[link](http:// en。 wikipedia.org/wiki/NoSQL_(concept))列出了許多,如果不是全部的話。你可以選擇。 – 2011-04-19 15:56:18

2

SQLite和BerkleyDB都很好,但它們對於非常簡單的任務仍然過於複雜。如果您的「數據庫」由兩個1000個條目組成的表格,則無法打敗世俗的二進制文件和搜索優化。

2

FirebirdIBPP司機可以做的工作

嵌入式版本是服務器的一個驚人的 變化。這是一個完整的 功能火鳥服務器打包在 只是幾個文件。這很容易 部署,因爲沒有必要 安裝服務器