2015-05-26 36 views
-2

我需要简单地操纵Sqlite3数据库(只读一些列),并且这只是我的程序的一小部分,我不认为只添加几条指令160k行。 有一种方法可以做到这一点STL或另一个没有那么多内存昂贵的库? 我在Windows上使用Visual C++。管理sqlite3数据库不使用官方sqlite3库

+0

假设你在Linux上,为什么不通过你的软件包管理器来安装它并将它作为普通库链接? –

+0

为什么在这个世界上有人贬低我的问题? – Azazel

+0

我想要注意的是,桌面窗口可能是目前在默认安装中不包含sqlite的唯一操作系统。其他地方(服务器,台式机,移动设备,甚至许多嵌入式设备)已经在那里,因此不需要额外的成本。 – Javier

回答

1

我现在想到的一件事是检查你是否可以对自己的sqlite文件进行操作。你可以看看这里的文件文档:https://www.sqlite.org/fileformat.html

但我认为它不值得它自己做所有这些。

另一个建议是这里: https://www.sqlite.org/footprint.html 你可以自己编译sqlite并省略它提供的一些函数,这会使库变小。只需编译你需要的功能。

+0

感谢您的回答,而且编译Sqlite3库时使用最严格的选项意味着要在我的代码中添加几万行代码库中的几行代码。 试图做一些操作sqlite3文件将太昂贵。 – Azazel

+0

设置某些标志然后编译库需要多少时间?这应该在一个小型图书馆的半小时内完成。库的目的是捆绑函数,当然你的程序中只有几行代码。这就是lib的用途。你想要的是10行代码的数据库功能... – Nidhoegger

+0

对不起,我误解了你之前说过的话。我在哪里通过sqlite3选项(-SQLITE_OMIT_ *)?我正在用VS 2013工具集编译cl.exe和lib.exe – Azazel