MagicalRecord SQLite 文件为空
Posted
技术标签:
【中文标题】MagicalRecord SQLite 文件为空【英文标题】:MagicalRecord SQLite file empty 【发布时间】:2015-05-26 14:53:03 【问题描述】:我在读取文件时遇到问题。我使用 MagicalRecord 作为我的 CoreData 包装器。我成功保存或更新对象。使用我的 NSLog 我可以看到它,一切都很好,我可以在我的数据库中使用它。但是每次我想在我的应用程序中查看 SQLite 文件(我使用的是 Datum LE)时,文件都是空的。我无法直接在我的应用程序的库文件夹中访问该文件。我将该文件复制到我的桌面,它是空的。我究竟做错了什么?所以再一次,我的 ios 应用程序中的一切工作正常,我可以看到记录被保存并且我可以正常获取它们。
【问题讨论】:
你的问题不清楚。当您尝试更新文件时,该文件在哪里?在应用程序包或文档/缓存/应用程序支持目录中? 在触发这个问题的地方添加一些代码sn-ps 在我的 iOS 模拟器设备文件夹中,Data Application Library Application Support 【参考方案1】:您显然在查看错误的文件。如果您的应用正在保存(我假设,跨应用重新启动),日期肯定保存。
一种查找方法是NSLog
持久存储 URL 并检查引用的文件。
【讨论】:
【参考方案2】:我相信您遇到的问题是 Core Data 使用的新的默认日记模式。
看这篇文章 https://developer.apple.com/library/ios/qa/qa1809/_index.html
基本上您的更改不会写入.sqlite
文件,而是在.sqlite-wal
中找到。但是,当您打开 .sqlite
时,我尝试过的大多数 SQLite 阅读应用程序都会将 -wal
吹走,祝您好运。
您可以尝试更改日志模式以进行调试
【讨论】:
以上是关于MagicalRecord SQLite 文件为空的主要内容,如果未能解决你的问题,请参考以下文章
Magical Record 不会保存到 SQLite 文件