我在商店中有一个使用CoreData模型的应用程序,我想完全改变应用程序(删除一些垃圾,组织,新的CoreData模型......等等)。
所以我想重新开始创建新项目,当我尝试将商店中的旧应用程序升级到这个新应用程序时会发生什么? (我关心CoreData)
非常感谢
答案 0 :(得分:1)
如果您稍微更改核心数据模型,则需要将数据迁移到新模型:
您只能使用用于创建它的托管对象模型打开Core Data存储。因此,更改模型将使其与先前创建的商店不兼容(因此无法打开)。如果更改模型,则需要将现有存储中的数据更改为新版本 - 更改存储格式称为迁移。
这是来自Apple的文档:http://developer.apple.com/library/mac/#documentation/cocoa/conceptual/CoreDataVersioning/Articles/Introduction.html
因此,如果您希望用户在新版本中使用旧数据,则您必须复制旧的核心数据模型,以便将数据提取并迁移到新模型。当然,对于那个之后的任何版本,你可以摆脱旧的模型。