我们正在执行我们的第一个iOS应用更新,也是我们的第一次Core Data迁移。核心数据迁移 - 从先前版本迁移选定数据
它似乎比我在网上看到的标准和轻量级核心数据迁移的例子更复杂,但也许我错过了一些东西。
我们的场景是我们已经更新了.xcdatamodel(简单地添加了一个新字段)以及我们的应用程序中使用的很多参考数据(存储在我们的核心数据数据库中),但是我们需要保留一些用户数据(存储在相同的核心数据数据库中)。
我已经将模型定义的多个版本添加到我们的.xcdatamodelld文件中,并且玩过轻量级核心数据迁移过程(使用映射模型(.xcmappingmodel文件)),它成功更新模型,但是我看不出有什么明显的方式可以让我们将选择的数据(用户数据)从以前版本的数据库导入到与下一版本应用程序捆绑在一起的新数据(包含我们更新的参考数据) 。
任何有关如何处理这种情况的建议将非常感谢。
由于提前,泰德
嗨Melsam, 感谢您的回答。我意识到轻量级迁移将简单地更新用户的现有数据库。我想要做的是在软件包中包含一个新的数据库文件,将用户数据从以前的数据库迁移到它中,然后最后删除以前的数据库。 我开始意识到这可能不是一个非常标准的核心数据迁移场景,并且道歉如果我的问题没有描述出色的情况... – Ted
对不起,我不明白你的问题。您所描述的内容似乎比轻量级迁移可以处理的要复杂得多。似乎手动移动数据是最佳选择(即通过初始化多个NSPersistentStoreCoordinator)。 – melsam
是的,我想是的。我现在开始后悔参考数据和用户数据都存储在同一个持久存储现在...巴。不管怎么说,还是要谢谢你。 – Ted