0

我在使用 Microsoft SQL Compact 3.5 数据库时遇到了一个奇怪的行为。在我正在处理的应用程序中,我需要在台式 PC 上创建一个 SQL 紧凑型数据库并将其发送到多个 PDA(运行 WinCE 5)。

数据库非常重(300 MiB)。

问题是当我第一次在 PDA 上打开数据库时,打开它需要 10 多分钟。之后没有问题,打开,读取,搜索到数据库。只是第一个开口很长。我测试了用我自己的软件和PDA上的查询分析器打开它,结果相同。

我还发现,如果我将数据库复制回台式 PC,打开它的时间会稍长一些(几乎看不到)。然后我将打开的文件复制回 PDA,第一次打开需要 10 多分钟。

我还测试了一个缩小的数据库(使用缩小操作),等待 40 分钟后我放弃了。

这是一个已知问题吗?难道我做错了什么 ?有没有办法防止这种情况发生?

谢谢。

4

1 回答 1

1

是的,这是一个已知问题,由操作系统差异引起

解决方法:

应用程序安装后在平台上创建数据库文件,例如使用我的脚本 API。

包括每个目标平台的数据库文件,该文件已经在目标平台上构建/打开(特别是只读数据库的问题)

避免使用基于字符串的键的索引(在大多数情况下可能是不可能的)

将索引构建推迟到部署期间或之后

http://erikej.blogspot.dk/2013/08/faq-why-is-opening-my-sql-server.html

于 2015-10-12T15:36:10.400 回答