当前位置:  开发笔记 > 数据库 > 正文

将两个SQLite商店合二为一

如何解决《将两个SQLite商店合二为一》经验,为你挑选了1个好方法。

假设我的应用程序文档目录中有两个SQLite文件.我如何将两者结合在一起并将它们保存为包含两者所有信息的单个文件?我是否真的必须创建两个持久性存储协调器并手动协调两者之间的过程,还是有一些更有效的方法呢?

-灰



1> Alex..:

你的问题不是你需要问的问题.Core Data中的SQLite存储仅仅是Core Data对象图的后备存储.事实上,它是一个SQLite数据库对Core Data来说并不重要.所以你的问题确实是,"如何将两个Core Data对象图合并为一个?"

这取决于你想要对数据做什么.Core Data中的一个规则是您不能在不同持久性存储中的两个对象之间建立关系.因此,如果您不需要存储A中的对象与存储B中的对象之间的关系,那么它非常简单.只需将两个持久存储添加到您的存储中NSPersistentStoreCoordinator,两个存储中的所有对象都可以从与该持久存储协调器关联的任何托管对象上下文中获得.

如果你确实需要在两个商店中的对象之间建立关系,或者你真的只想拥有一个商店,那么最好的办法是创建第二个NSPersistentStoreCoordinator和第三个不同的持久存储来保存合并的对象图.您需要编写代码来创建附加到此秒的托管对象上下文中的对象的副本NSPersistentStoreCoordinator.您需要在原始对象所具有的副本之间设置相同的关系,但是如何执行此操作取决于您的数据模型.如果您想在问题中添加更多细节,也许我可以让您更好地了解所涉及的内容.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有