2011-04-19 46 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司机可以做的工作

嵌入式版本是服务器的一个惊人的 变化。这是一个完整的 功能火鸟服务器打包在 只是几个文件。这很容易 部署,因为没有必要 安装服务器