Optimization Windows CE 6.0+SQL Server Compact 3.5=数据访问速度慢

Optimization Windows CE 6.0+SQL Server Compact 3.5=数据访问速度慢,optimization,sql-server-ce,windows-ce,motorola,data-access,Optimization,Sql Server Ce,Windows Ce,Motorola,Data Access,我使用的是带有Windows嵌入式CE 6.0+SQL Server Compact 3.5的移动设备。数据库位于存储卡Kingston 8 GB 10类上 问题:数据库有1000000行、一个集群索引和一个非集群索引。当我第一次使用查询到数据库时,查询使用索引-查询运行非常缓慢~120分钟 可以加速或组织数据,使查询执行时间缩短5秒 总之:我们希望使用该设备使用其自己的数据库产品进行库存盘点。网络访问不受限制 谢谢 您使用的设备没有很好的硬件配置,它只有128到256 MB的RAM。最好使用M

我使用的是带有Windows嵌入式CE 6.0+SQL Server Compact 3.5的移动设备。数据库位于存储卡Kingston 8 GB 10类上

问题:数据库有1000000行、一个集群索引和一个非集群索引。当我第一次使用查询到数据库时,查询使用索引-查询运行非常缓慢~120分钟

可以加速或组织数据,使查询执行时间缩短5秒

总之:我们希望使用该设备使用其自己的数据库产品进行库存盘点。网络访问不受限制


谢谢

您使用的设备没有很好的硬件配置,它只有128到256 MB的RAM。最好使用MC45或MC3100系列之类的产品。 无论如何,您可能希望尝试将.sdf文件移动到设备的ROM内存中,这可能会加快您的时间,但忘记将其设置为5秒

有没有想过如果.sdf必须有所有这些1Mi行。你不能把数据分开吗


如果你想交流知识,我很乐意传授我的经验

不幸的是,客户不打算在不久的将来购买更高效的设备

设备的内存有限。数据库大小约为2GB,每年将增加约500MB。因此,决定在microSD 10类上创建数据库

在放置日期尝试以下算法:

1000000行以上的所有表格均划分为行数不超过500000的表格

在软件中实现的移动设备功能为数据库中的每个表缓存一个查询。这虽然很耗时,但只需要一次并在快速访问缓存数据之后进行

使用移动设备执行与远程数据库的同步以向移动设备的数据库添加新信息。在这种情况下,不需要缓存-直接在设备上更新数据库


你好,马克西姆,欢迎来到StackOverflow!到目前为止你试过什么?我们能看到一些代码和示例数据吗?当你不知道数据库和/或查询的确切用途时,很难优化它。你的数据库是否来自桌面系统?第一次是什么意思?数据库是一个简单的表,包含IdRow int not null、IdBarcode int not null、Name char100 not null字段。IdBarcode上的群集IdRow索引和非群集索引。该表有1000000条记录。当您第一次从移动设备访问表时,请选择*from myTable,其中IdBarcode=123以缓存索引,这是一段非常长的时间,从2小时开始。这种情况是不能接受的。如何加速缓存索引?目前的情况如我对问题的回答所述。