运行一些关闭数据库,删除它并用测试夹具替换它的测试后,我发现我的应用程序和数据库文件的状态有些奇怪的行为。当我使用调试PC上的工具检查数据库文件时,它与应用程序本身似乎报告的内容不匹配。这种奇怪的行为可能与this bug有关。Sqlite数据库中的.db-shm和.db-wal扩展名是什么?
我注意到,有两个文件具有相同的基本名称数据库(与正常.db
扩展名)的文件扩展名是.db-shm
和.db-wal
,每个比.db
文件的时间戳更新。
我假设这些都是某种类型的临时文件。但是,我想知道应用程序是否被终止,不应该被删除?更重要的是,我假定在应用程序被操作系统终止之前,在.db
文件中更新存储在其中的所有数据。它是否正确?
@ satur9nine这真的很奇怪..我被要求更新别人的代码..在测试期间,我意识到他的核心数据的使用在iOS 6.x上工作得很好......但是当我在iOS 7上测试它时.x ..它导致了上面的'.db-shm'和'.db-wal' ..这是否发生在其他人身上? – abbood
在iOS 7上,这些似乎包含所有事务。 db文件对我来说是一个空的数据库。我需要抓住所有三个文件来查看数据库的“真实”内容。 –