0

我已经阅读了许多关于 sqlite 数据库以及如何使用 wal 和 checkpoint 进行更新的主题,但尽管互联网上有所有信息,但我真的不明白。

我将台式计算机上的两个 sqlite 数据库与 Python 脚本合并,但是当我将新文件(store.data)放回 Xcode 中的文件夹并替换旧文件时,应用程序在运行时崩溃(错误 259)。我认为这是因为原始 wal/shm 文件无法识别新数据库(现在具有新信息/列/行),但我无法弄清楚如何从该文件创建新的 wal/shm。或者我应该在合并数据库的同时修改那些?

编辑:当我在 sqlite 浏览器应用程序中执行 PRAGMA wal_checkpoint(RESTART) 时它工作正常......我替换了我的 Xcode 文件夹中的旧文件,但它只有在我进行新的重建时才有效,而不是如果我只是在模拟器中打开它...这不会在真实设备上造成问题,因为我不会重建应用程序而只是启动它?有没有办法绕过它?

4

0 回答 0