2010-12-15 40 views
13

我正在尝试迁移大约11Mb的iPhone/iPad sqlite存储。它有大约三十个不同的实体,所有这些都非常相关。使用iOS的多块核心数据迁移块大小

在3GS上,它需要相当长的一段时间。即使轻量级迁移也需要四分钟左右的时间

我想这是因为所有的关系都保存在内存中。

阅读苹果的迁移指南,它说,对于大型数据集,一种方法是做使​​用不同的映射模型多遍。

一切都很好。但是,如果一个映射模型中的实体与另一个映射模型中的实体相关,则似乎无法执行此操作。实际上,编译错误是沿着映射模型xcmappingmodel文件中的“无法自动生成具有零映射名称的值表达式”行生成的。

任何提示非常感谢。

非常感谢,

最大

+0

嗨马克斯 - 你有没有找到答案呢?我刚刚意识到我和你一样(具有高度相关实体的大数据集),有些设备无法执行迁移。我开始认为实际管理这个的唯一方法就是完全自定义(即根本不使用NSMigrationManager ...自己完全重新创建数据存储...)。 – glenc 2011-02-03 22:40:46

+0

当我进入另一个项目时,恐怕还不行。我的技术是做一个完全自定义的迁移。下次我看到我的同事时,我会问他是否设法解决它。 – 2011-02-11 16:48:43

回答

1

广东话您只需创建一个新的数据库与新scheema,然后从旧的阅读和插入到新的一个开始迁移过程?

+0

是的,这就是我最终做的。它仍然非常缓慢,因为一切仍然记忆。处理所有关系是个问题。 – 2011-02-22 09:44:38