iOS CoreData版本升级和数据库迁移

iOS CoreData版本升级和数据库迁移,第1张

概述2018年10月24日 10:20:00 https://blog.csdn.net/weixin_34168700/article/details/86021876 app中使用了CoreData,并且在下一个版本中有实体变动,比如实体新增字段、修改字段等改动,那么app在覆盖安装时就要进行数据库迁移,否则app就会crash。 那如何实现数据库迁移呢?大概需要这几个步骤: 1. 选中你的Cor

2018年10月24日 10:20:00

https://blog.csdn.net/weixin_34168700/article/details/86021876



app中使用了CoreData,并且在下一个版本中有实体变动,比如实体新增字段、修改字段等改动,那么app在覆盖安装时就要进行数据库迁移,否则app就会crash。

那如何实现数据库迁移呢?大概需要这几个步骤:


1. 选中你的CoreData.xcdatamodeld文件,选择Xcode菜单editor->Add Model Version  

比如取名:mydata2.xcdatamodel



 

截图.png  

截图.png

2. 起一个名字,也就是当前新版本CoreData文件的名字。然后点击确认。

新的CoreData名字

3. 这时候会发现CoreData.xcdatamodeld中多了一个版本文件。如图:

@H_502_74@


4.选择刚才创建的版本,在inspector中的Versioned Core Data Model选择Current模版为CoreData2

截图

5.  修改新数据模型CoreData2,在新的文件上添加属性和修改实体。

6. 删除原来的实体文件,重新生成下的类。

 

删除实体类文件,重新生成新的类文件

7. 在persistentStoreCoordinator中添加代码:

 

添加代码

8. 重新编译运行就OK了。

PS: Xcode8 系统CoreData类做了不少改动,当然使用起来更简单了,如果您是用Xcode8创建的工程实现版本升级和数据迁移,则直接修改实体,然后重新生成即可,非常简单。具体使用和代码见https://github.com/qindeli/XCode8-CoreData-/tree/master/TestCoreData.

总结

以上是内存溢出为你收集整理的iOS CoreData版本升级和数据库迁移全部内容,希望文章能够帮你解决iOS CoreData版本升级和数据库迁移所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1076083.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存