缺失version model的情况下能否完成Core Data的数据迁移?

简介:

今天遇到一个问题,问题描述见此 http://stackoverflow.com/q/20062215/889538

为此进行了一番验证。

我有一个Demo工程,叫做cdNBA,其数据模型如下:


然后基于cdNBA新建了两个分支:cdNBA1和cdNBA2,分别对数据模型进行修改。


cdNBA1工程创建了cdNBA 5.xcdatamodel,并安装到模拟器上写过数据。

接着cdNBA2工程创建了cdNBA 6.xcadatamodel,缺失cdNBA 5.xcdatamodel文件:


继而,对模拟器上的cdNBA进行覆盖安装,可以发现数据得到了迁移:



为什么在缺失cdNBA 5.xcdatamodel文件的情况下,能从cdNBA1升级到cdNBA2呢?

官方文档描述数据迁移的要求是:

A managed object model that it can use to open the existing store.

而非必须是精确的对应模型文件。而模型文件本身是xml结构描述文件,除了一些基本信息外,就是对各种表、各个字段的描述。何为“can use to open the existing store”的模型文件,目前无法得到确切的验证(无源代码言X),但可以得到的结论是在缺失对应version model的情况下,如果modification相对lightweight,那么是可以成功迁移数据的。

目录
相关文章
|
6月前
|
数据采集 机器学习/深度学习 数据格式
在使用 Core ML 时,有哪些注意事项?
在使用 Core ML 时,有哪些注意事项?
98 1
|
2月前
|
Go 索引
internal\model\data_support.go:17:10: cannot use _ as value or type
internal\model\data_support.go:17:10: cannot use _ as value or type
|
3月前
LangChain 构建问题之定义extract_local_group_size工具如何解决
LangChain 构建问题之定义extract_local_group_size工具如何解决
21 0
|
6月前
|
SQL 数据库
一个很实用的造数工具—Spawner Data Generator
一个很实用的造数工具—Spawner Data Generator
216 0
|
6月前
|
数据库
Greenplum【异常 03】COPY命令报错 > ERROR: invalid input syntax for type double precision: ““(问题分析及解决方案)数据去重
Greenplum【异常 03】COPY命令报错 > ERROR: invalid input syntax for type double precision: ““(问题分析及解决方案)数据去重
216 0
|
分布式计算 Hadoop 关系型数据库
导入 Import--增量导入--Append 模式 | 学习笔记
快速学习 导入 Import--增量导入--Append 模式
345 0
导入 Import--增量导入--Append 模式 | 学习笔记
【解决方案】The opset version of the onnx model is 12, only model with opset_version 10/11 is supported.
【解决方案】The opset version of the onnx model is 12, only model with opset_version 10/11 is supported.
770 0
openpyxl库由于不支持数据验证扩展导致的读取excel报“Data Validation extension is not supported and will be removed“错解决方法
openpyxl库由于不支持数据验证扩展导致的读取excel报“Data Validation extension is not supported and will be removed“错解决方法
2325 0
openpyxl库由于不支持数据验证扩展导致的读取excel报“Data Validation extension is not supported and will be removed“错解决方法
|
SQL 关系型数据库 MySQL
Data Migration 常见问题
DM 是否支持同步阿里 RDS 以及其他云数据库的数据? DM 仅支持解析标准版本的 MySQL/MariaDB 的 binlog,对于阿里云 RDS 以及其他云数据库没有进行过测试,如果确认其 binlog 为标准格式,则可以支持。 task 配置中的黑白名单的正则表达式是否支持非获取匹配(?!)? 目前不支持,DM 仅支持 golang 标准库的正则,可以通过 re2-syntax 了解 golang 支持的正则表达式。 如果在上游执行的一个 statement 包含多个 DDL 操作,DM 是否支持同步? DM 会尝试将包含多个 DDL 变更操作的单条语句拆分成只包含一个 DDL 操
189 0