核心数据sqlite和其他数据库进行合并

时间:2013-03-08 20:19:57

标签: ios database core-data

现在我正在开发一个具有非常复杂的核心数据图的ios应用程序,但我也计划它适用于Android和其他设备以及网页。

网页和其他设备可以使用多个数据库进行管理,但在ios中我正在使用核心数据,因为我觉得编程更友好。我的问题是,如果要为整个应用程序生态系统(web,android,html,ios)创建一个服务器,我能够将所有数据合并到一个服务器数据库中,包括核心数据吗?

1 个答案:

答案 0 :(得分:0)

您当然可以合并数据,但不能合并数据库文件。如果您使用服务器存储和/或同步数据,则需要为客户端访问定义某种服务器API。使用Core Data的iOS应用程序也可以利用该API与服务器进行通信。所以,是的,应该可以做到。

您的服务器端代码几乎肯定是基于SQL的,所以当来回通信时,您可能最终将Core Data实体映射到SQL表。这很好,只要服务器API不需要太多特定于SQL的非核心数据样式数据。例如:Core Data通常不使用连接表之类的东西,因为它具有真正的多对多关系。有可能让一个iOS应用程序在Core Data关系和SQLism之间进行转换(我已经完成了),但这是一种痛苦的屁股。但通常并不需要 - 体面的服务器API不会简单地以原始形式公开整个表结构。