【发布时间】:2014-06-02 13:07:37
【问题描述】:
我创建了一个带有 1 个表和超过 500,000 条记录的 sqlite3 数据库(使用 SQLite Expert Professional); 如果我命令一个简单的查询,例如:
select * from tableOne where entry like 'book one'
如果这是我连接数据库后执行的第一个命令,执行并检索结果需要相当长的时间(~15 秒),但在第一个命令之后,一切恢复正常,现在每个命令都执行一个非常可接受的速度;
即使我关闭了我的应用程序(我使用带有 sqlite 模块的纯 LUA)(并且在它的逻辑范围内,合理地关闭所有连接)只要 Windows(8 x64)正在运行且未重新启动,每个命令甚至第一个命令都会执行很好,但是在重新启动 Windows 之后,再次像往常一样,第一个命令执行速度很慢;
是什么原因? 我怎样才能防止这种情况发生?
【问题讨论】:
-
发布架构。该命令可能正在查看所有 500,000 行。