coreData旧版本增加字段,新版本是否可以继续使用旧版本内容的测试(MagicalRecord的使用)

coreData使用第三方库MagicalRecord,

参考文章:http://blog.csdn.net/kuizhang1/article/details/21200367

coreData数据库升级的操作步骤:

http://www.07net01.com/zhishi/411401.html

根据这两篇文章测试升级,没有出现任何问题.我的demo项目:
https://github.com/lichanghong/CoreDataVersionTest

网上某些资料说:
如果你的app运用了CoreData技术,那么在你修改了DB字段以后,再在旧版本上升级为新版本时会crash. 因为升级只升级了应用app,没有升级目录下的db文件。如果是开发当中,只需要deleate app再install一次。如果是虚拟机,只需重置模拟器.如果是上传到appstore的软件,那你可要小心处理了,没有经过migrate处理的app,用户升级后必然会 crash.
但是在我的测试中没发现crash现象.

时间: 2024-10-13 22:44:01

coreData旧版本增加字段,新版本是否可以继续使用旧版本内容的测试(MagicalRecord的使用)的相关文章

新版本的作用域插槽以及旧版本的slot

新版本的作用域插槽以及旧版本的slot 1.作用/概念:预先将使用的内容进行保留 我的理解就是父页面在组件标签内插入任意内容,子组件内插糟slot控制摆放位置(匿名插槽,具名插槽) 案例: <body> <div id='app'> <Hello> <div> 这里是插入的内容 //这一部分的内容并不会被输出(原因是被组件覆盖掉了) </div> </Hello> </div> <template id="

因在缓存对象中增加字段,而导致Redis中取出缓存转化成Java对象时出现反序列化失败的问题

背景描述 因为业务需求的需要,我们需要在原来项目中的一个DTO类中新增两个字段(我们项目使用的是dubbo架构,这个DTO在A项目/服务的domain包中,会被其他的项目如B.C.D引用到).但是这个DTO对象已经在Redis缓存中存在了,如果我们直接向类中增加字段而不做任何处理的话,那么查询操作查出来的缓存对象就会报反序列化失败的错误,从而影响正常的业务流程,那么来看一下我的解决方案吧. 升级缓存版本号 我们的正式环境和预发布环境是共用Redis和Mysql.如果修改了DTO且没有加@Json

[.net 面向对象程序设计深入](4).NET MVC ——谈谈MVC的版本变迁及新版本6.0发展方向

[.net 面向对象程序设计深入](4).NET MVC ——谈谈MVC的版本变迁及新版本6.0发展方向 1.关于MVC 在本篇中不再详细介绍MVC的基础概念,这些东西百度要比我写的全面多了,MVC从1.0到5.0的时间也不短了,很多人只是按照范例去使用MVC的一些基础功能,并没有更加深入的了解MVC.在这一系列中,我主要介绍MVC的一些原理和使用技巧,以及MVC的发展方向. 先说说MVC,首先他是一种设计模式,如果你百度为什么GOF23种设计模式中没有MVC,答案很有意思,如下: “在他们看来

SqlServer 禁止架构更改的复制中手动修复使在发布和订阅中分别增加字段同步

由于之前的需要,禁止了复制架构更改,以至在发布中添加一个字段,并不会同步到订阅中,而现在又在订阅中添加了一个同名字段,怎么使这发布和订阅的两个字段建立同步关系呢? 下面就测试更改:此次发布类型为事务复制的可更新订阅,其他类型的发布没有测试. 首先建立事务复制的可更新订阅,建立好之后. 在发布创建一张测试表: CREATE TABLE [dbo].[DemoTab]( [Guid] [uniqueidentifier] NOT NULL, [SID] [varbinary](85) NOT NUL

MySQL中大数据表增加字段,通过增加索引实现

MySQL中大数据表增加字段,通过增加索引实现 普通的添加字段sql ALTER TABLE `table_name` ADD COLUMN `num` int(10) NOT NULL DEFAULT 0 AFTER `addtime`; 普通的添加索引sql ALTER TABLE `table_name` ADD INDEX `num` (`num`) ; 但是线上的一张表如果数据量很大呢,执行加字段操作就会锁表,这个过程可能需要很长时间甚至导致服务崩溃,那么这样操作就很有风险了. 在网上

2014.7.26 为cocos2d-x3.2版本增加protobuffer2.5.0支持

为cocos2d-x3.2版本增加protobuffer2.5.0支持(win32&android) 因为不想排版 所以这里只有文字 可以下载word版观看:点击下载 作用:添加protobuffer支持后,可以利用protobuffer特性来序列化和反序列化二进制数据流. 软件准备:cocos2d-x3.2, protobuffer2.5.0,protoc-2.5.0-win32, vs2012, anroid相关环境(SDK, NDK , CYGWIN等) Setp1:新建cocos2d-x

SQL语句增加字段、修改字段、修改类型、修改默认值

--一.修改字段默认值 alter table 表名 drop constraint 约束名字 ------说明:删除表的字段的原有约束 alter table 表名 add constraint 约束名字 DEFAULT 默认值 for 字段名称 -------说明:添加一个表的字段的约束并指定默认值 --二.修改字段名: alter table 表名 rename column A to B --三.修改字段类型: alter table 表名 alter column UnitPrice

实战-130W表增加字段耗时

工作需要对130W的表增加字段,因为是操作线上数据库,所以提前在本地调查下耗时. 首先建表: CREATE TABLE `alter_cloumn_test` ( `id` int(11) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 生成13W条数据: 1.生成13W条插入语句脚本:insert_column_sql.sh for ((i=0; i<1300000;i++)) do echo

在cxf中使用配置避免增加字段导致客户端必须更新的问题

在cxf中使用配置避免增加字段导致客户端必须更新的问题 http://www.iflym.com/index.php/code/201307310001.html 在cxf中使用配置避免增加字段导致客户端必须更新的问题 2013/07/31 11:00:19 1 Comment Tags: cxf, webservice   Posted :java开发, 开源框架, 编程开发 在使用cxf实现webservice时,经常碰到的问题就是如果在服务端,修改了一个接口的签名实现,如增加一个字段,或者