如何使InMemory.db成为内存映射文件并将其用作MFC中的数据库

时间:2010-10-27 11:46:26

标签: c++ windows sqlite

我必须在我的项目中使用InMemory.db,但性能很慢,InMemory.db大小为10 MB。一些查询可以检索超过30000条记录需要花费大量时间。他们有什么方法可以改善表现吗?

如何使InMemory.db成为内存映射文件,并将其用作MFC中的数据库。一个例子非常有用。

感谢Space_C0wb0y

创建.db文件的原因是将文件分发给不同的用户。

我想在内存中加载此(InMemory.db)文件并使用该文件,或者以任何方式使用.db文件创建内存数据库。

查询类似于

Select 
    ltoken, date_mm, Vcontract_name, price, quantity, 
    field1, field2, field3, field4, field5, field6, field7, 
    field8, field9, field10, field11, field12....., fieldn 
from contract

感谢Steve Townsend

问题是这个.db文件是由我应该使用的客户端提供的,因此不能更改架构或数据库中的任何东西

我只能通过打开文件连接来直接使用此文件进行编程。

我不知道如何在内存中加载此文件

我做了一些谷歌,发现他们可以通过某种方式将这个文件加载到内存中并将其用作数据库

但是我没有成功,所以有人可以帮我把这个文件加载到内存中任何一个例子都会有所帮助

1 个答案:

答案 0 :(得分:0)

此大小的数据库应该可以在任何Windows桌面上完全缓存,而无需您进行任何额外的工作。

在数据库之前检查您的SQL和架构(尤其是表索引)。