【发布时间】:2013-07-07 01:09:00
【问题描述】:
我正在尝试将 sqlite-File 读入内存以获得更好的性能,当关闭我的应用程序时,我想将它写回硬盘。
我在 Java 中使用 jdbc (3.7.2) 驱动程序。
根据文档,我的代码看起来像
this._conn = DriverManager.getConnection("jdbc:sqlite:");
Statement stat = this._conn.createStatement();
File dbFile = new File(this._config.GetDataBaseFile());
if (dbFile.exists()) {
this._logger.AddInfo("File exists.");
stat.executeUpdate("restore from " + dbFile.getAbsolutePath());
}
文件存在(并且它是一个有效的sqlite db),this._conn 已打开,但如果我想对其执行语句,似乎里面没有表也没有数据。它似乎没有恢复任何东西。
关于如何进一步解决/调试的任何建议?
(顺便说一句 - 如果我在连接上使用 stat.executeUpdate("backup to test.db"),它会备份我的空 :memory: db...)
【问题讨论】:
-
该文件存在,并且它是一个有效的 SQLite 数据库 - 但它是否包含任何表?
-
是的。还有数据。
-
@mjreaper..你找到这段代码的解决方案了吗?你能帮我恢复吗?