我想将MOC
的内容保存到文件myFile.ext
。一切运作良好,我的数据保存到文件但我还要辅助文件:
myFile.ext-wal
myFile.ext-shm
这些文件是否符合我的目的(将MOC
的内容保存到文件中)?我想只在一个文件中“发送”我的数据。此外,当我再次获取数据时,我只使用URL
myFile.ext
。
如果没有必要,是否可以避免创作?
答案 0 :(得分:2)
CL指出它们在WAL模式下是必需的。在创建持久存储时禁用日记模式会传递流动选项。
NSDictionary *options = @{NSSQLitePragmasOption: @{@"journal_mode": @"DELETE"};
_coordinator = [_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:url options:options error:&storeError];
再次运行应用时,-wal应该会消失,并且可以删除或忽略-shm。您的所有数据都应该在一个sqlite文件中。
答案 1 :(得分:1)
当数据库位于WAL mode时,会创建(并且必须)这些文件。
要禁用WAL模式,请直接打开数据库并执行PRAGMA journal_mode = DELETE。