关系如何在coreData

时间:2015-09-23 03:27:37

标签: ios objective-c swift core-data relationship

我知道如何在coredata中创建关系,但我不知道它是如何工作的。

例如:

员工:   名称   ID

系:   名称

我可以在' Department'之间创建一个关系(一对多)。和'员工'当我获取部门'时,我也会自动获得员工。

如果没有关系,我将在部门中创建一个字段(employeeId),并加入“员工”。表

我不知道coredata如何通过关系获得正确的员工。

由于

2 个答案:

答案 0 :(得分:2)

您可以从真正的sqlite文件中探索实体是什么。

例如 我有这种关系 enter image description here

当我添加三条记录时,我使用SliteBrowser来查看SQLite文件 它有五个表

ZDEPARTMENT表 enter image description here ZEMPLOYEE表 enter image description here

注意我在ZEMPLOYEE中选择的内容,它在ZDEPARTMENT中保存了department的id,因此很清楚核心数据关系的工作原理。

注:

  • Z_PK是SQLite表中的唯一
  • Z_ENT是与Z_PRIMARYKEY表中列出的实体ID相同的实体ID

答案 1 :(得分:0)

您可以在NSFetchRequest中使用NSPredicate获取正确的员工。 NSPredicate类似于Database中使用的where子句。 请检查一下:Use NSPredicate in CoreData FetchNSPredicate in CoreData

希望这会对你有所帮助。