核心数据模型版本控制和数据迁移
Posted
技术标签:
【中文标题】核心数据模型版本控制和数据迁移【英文标题】:Core Data Model Versioning and Data Migration 【发布时间】:2012-12-13 06:32:29 【问题描述】:我想更新应用程序版本,但是在新版本中我在核心数据中添加了两个新属性,我想将数据从旧版本迁移到新版本。我的步骤:
-
选择.xcdatamodeld文件,然后编辑器->添加模型版本
设计 > 数据模型 > 设置当前版本。
修改选项
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
[NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];
if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:options error:&error])
但是我的新版本没有找到旧版本的任何数据。 如何修改它。
【问题讨论】:
【参考方案1】:我发现我的错误:PushNoticationModal.sqlite 与名称 PushNoticationModel.xcdatamodel 不同,你看到 PushNoticationModal 不像 PushNoticationModel。
当你只构建一个 sqlite 时,名称 PushNoticationModal.sqlite 与 PushNoticationModel.xcdatamodel 不同,你的应用程序也可以运行。但是当你构建迁移时,你应该保持不变
【讨论】:
以上是关于核心数据模型版本控制和数据迁移的主要内容,如果未能解决你的问题,请参考以下文章