我已经设置了一个应用程序,它预先填充了数据,将数据库复制到项目的存储中。使用“CoreDataBooks 示例”方法:有什么方法可以预填充核心数据吗? https://stackoverflow.com/questions/2230354/any-way-to-pre-populate-core-data
对于应用程序升级,我想向数据库添加更多数据,但我不想更改现有数据库,因为新的用户数据存储在那里?
最好的方法是什么?
我想我会创建一个新的版本化托管对象模型(如果架构中没有实际更改,我不确定是否可以添加新的 MOM 版本),对于新版本,读取当前运行的 MOM 版本,迁移 MOM到最新版本,并在代码中手动添加自当前运行的 MOM 版本以来尚未添加的新记录。
在代码中手动添加新记录似乎有点繁琐。这听起来正确吗?还是有更优雅的方式来添加这些新数据?
Thanks!
如果您更改托管对象模型本身,例如添加新实体或更改现有属性,则需要使用迁移来更新现有持久存储。有关迁移的详细信息,请参阅核心数据文档。
如果您只想添加新数据,那么您别无选择,只能“手动”执行此操作。
请记住,Core Data 是一个对象图管理系统,而不是数据库。对象“图”是相互关联的对象的“网络”,因此向图中添加数据的唯一方法是创建新对象并设置它们的关系。这并不是低效,而是它的工作方式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)