美文网首页
【iOS】Core Data迁移

【iOS】Core Data迁移

作者: FineFan | 来源:发表于2017-08-18 19:22 被阅读12次

core data是苹果自带的一个轻量本地数据库,速度较快使用也比较方便,但是数据迁移需要多多注意

1、选中你的base xcdatamodel文件,Editor--Add Model Version

2、在右侧工具栏Model Version --current选择新版xcdatamodel文件

3、在新版xcdatamodel添加你想添加的entity或者attribute

4、[self persistentStoreCoordinator];

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator

{

if (_persistentStoreCoordinator != nil) {

return _persistentStoreCoordinator;

}

_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];

NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"MyCacheData.sqlite"];

NSDictionary * options = @{NSMigratePersistentStoresAutomaticallyOption:[NSNumber numberWithBool:YES],

NSInferMappingModelAutomaticallyOption:[NSNumber numberWithBool:YES]

[_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]

return _persistentStoreCoordinator;

}

这一步很重要,如果没有自动迁移,会导致crash

5、Mapping Model

关于mapping其实可以选择删除原来类重新生成,也可以自己添加

如果使用了三方比如Magical Record等一些三方软件,可以直接[MappingModel类 MR_createInContext:context];然后对象使用set方法赋值,这个很方便

自己生成的话有Mapping Model类文件,选择映射的xcdatamodel文件。有自动映射和手动映射

推荐文章:blog.csdn.net/jasonblog/article/details/8528755

如果对您有帮助,请点个赞啊

相关文章

网友评论

      本文标题:【iOS】Core Data迁移

      本文链接:https://www.haomeiwen.com/subject/xiaarxtx.html