先在桌面上打开数据库,再在PDA上打开数据库



我在Microsoft SQL Compact 3.5数据库中遇到了一个奇怪的行为。在我正在工作的应用程序中,我需要在台式电脑上创建一个SQL紧凑数据库,并将其发送到几个PDA(运行WinCE 5)。

数据库非常重(300 MiB)。

问题是,当我第一次打开PDA上的数据库时,仅仅打开它就需要10多分钟。之后没有问题,可以打开、读取、查找进入数据库。只是第一个开场白就很长。我用我自己的软件和PDA上的查询分析器测试打开它,结果相同。

我还发现,如果我把数据库复制回桌面电脑,打开它只是稍微长一点(几乎不明显)。然后我将打开的文件复制回PDA,第一次打开需要10多分钟。

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

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

谢谢。

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

解决方案:

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

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

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

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

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

相关内容

最新更新