我有一个关于将数据存储在 SQLite 中的应用程序的问题。使用FMDB包装器读取数据,如果服务器端数据库发生更改,则必须对用户透明地更新数据。
FMDatabase
为了实现这一点,每当下载新数据库时,我都会用一个新对象替换我的单例中的整个对象。
但是,对于瞬间查询将失败,例如,如果用户当前正在滚动表视图。
那么问题来了,如何.sqlite
在保留当前队列的同时替换当前打开的文件呢?
编辑:查询经常针对数据库运行,例如在滚动视图时有 count()s,因此没有简单的方法可以暂时“阻止”用户与数据库交互。