如何建立两个表之间的关系?

时间:2012-08-09 12:17:02

标签: core-data

我是核心数据的新手。

我有一个数据模型,其中有两个表和它们之间的1-N关系。

应用程序从服务下载所有数据并将数据保存在每个表中。

此外,这些表是相关的,因此希望这样做:

a)获取table2的所有元素,满足某些条件。

b)对于table2中的每个元素,标识符看表table1 /保存table1的id。

c)我得到表1中符合要求ID的项目。

d)我将表2与1相关联。

我无法做到这一点。 :(

我不知道这种方法是否以这种方式建立表之间的关系是好还是没有。

1 个答案:

答案 0 :(得分:1)

这很难回答。如果您将Core Data视为SQL表,那么您将陷入困境。

核心数据不是关于加入和搜索表,而是关于对象图。对象与另一个对象具有关系,该对象与另一个对象具有反向关系。基本上,你应该做的是:

  1. 这是您在表2中存储的实体的获取请求,该请求受定义条件的谓词的限制。
  2. 您实际上并未在Core Data中直接处理ID。你几乎不会直接处理密钥。
  3. 第1步返回了一组对象,您可以对此进行进一步的谓词来过滤它。
  4. 这就是反过来的关系。
  5. 我知道这不会回答您的实际问题。我试图让你把你的核心数据存储看作是一个彼此相关的对象集合,而不是一堆链接表。