核心数据模型版本控制和数据迁移

时间:2012-12-13 06:32:30

标签: iphone ios core-data core-data-migration

我想要app版本更新,但是在新版本中我在核心数据上添加了两个新属性,我想将数据从旧版本迁移到新版本。我的步骤:

  1. 选择.xcdatamodeld文件,然后编辑 - >添加模型版本
  2. 设计>数据模型>设置当前版本。
  3. 修改选项

     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]) 
    
  4. 但我的新版本没有找到旧版本的任何数据。 如何修改它。

1 个答案:

答案 0 :(得分:0)

我发现我的错误:PushNoticationModal.sqlite与PushNoticationModel.xcdatamodel名称不一样,你看PushNoticationModal不像PushNoticationModel。

当你只构建一个sqlite时,名称为PushNoticationModal.sqlite,与PushNoticationModel.xcdatamodel不同,你的应用程序也可以运行。但是当你构建迁移时你应该保持相同