核心数据关系与基于服务器的外键

时间:2012-05-03 02:16:34

标签: sql ios core-data object-relationships

我有一个复杂的iPad应用程序正在使用Core Data。我从服务器接收数据,该服务器具有内置于各种表中的外键以表示表(实体)之间的关系。

当我重写应用程序以使用Core Data时,我应该维护外键结构并创建自己的访问者,还是将它们转换为Core Data关系或同时使用它们?似乎是工作的两倍。我已经有数据链接两个表,我可能需要维护我发送回服务器的数据。然而,Core Data将为关系创建自己的密钥。它复制信息并且可能不同步。

我可以: 1.保留现有属性以表示表之间的关系,并根据需要编写自己的提取。 2.当我从服务器接收数据并使用核心数据关系时,构建对象图。 3.根据需要使用混合,有时是外键属性,有时使用关系。

是否有一种典型方法用于从服务器接收大部分数据的Core Data应用程序?

1 个答案:

答案 0 :(得分:1)

如果您要使用核心数据而不是sqllite,请转换为Core Data。请记住,CoreData不仅仅是一个关系数据库。它用于持久化对象图。因此,您构建数据结构的方式可能完全不同。

通常,您可能在Core Data应用程序中有更多的非规范化数据,但实际上,您应该重新映射您希望它在您的应用程序中使用的数据。那你就会知道真正的答案。但是,我不认为我会留下外键...我会使用关系,因为这是核心数据最适合的方式。