关系如何在 coreData 中运作
How relationship works in coreData
我知道如何在 coredata 中创建关系,但我不知道它是如何工作的。
例如:
员工:
姓名
编号
部门:
名字
我可以在 'Department' 和 'Employee' 之间创建关系(一对多),当我获取 'Department' 时,我也会自动获取员工。
如果没有关系,我会在部门中创建一个字段(employeeId),并加入'Employee' table。
我不知道 coredata 如何通过关系获得正确的员工。
谢谢
您可以在 NSFetchRequest 中使用 NSPredicate 获取正确的雇员。
NSPredicate 类似于数据库中使用的 where 子句。
请检查:Use NSPredicate in CoreData Fetch
和 NSPredicate in CoreData
希望对您有所帮助。
你可以从真正的sqlite文件中探索什么是实体。
例如
我有这个关系
当我添加三条记录时,我使用SliteBrowser查看SQLite文件
它有五个 table
Z 部门 Table
ZEMPLOYEE Table
注意我在ZEMPLOYEE中选择的,在ZDEPARTMENT中保存了department
的id,所以很清楚核心数据关系是如何工作的。
注意:
- Z_PK 是 SQLite 中唯一的 Table
- Z_ENT 是他们的实体 ID 与 Z_PRIMARYKEY table
中列出的相同
我知道如何在 coredata 中创建关系,但我不知道它是如何工作的。
例如:
员工: 姓名 编号
部门: 名字
我可以在 'Department' 和 'Employee' 之间创建关系(一对多),当我获取 'Department' 时,我也会自动获取员工。
如果没有关系,我会在部门中创建一个字段(employeeId),并加入'Employee' table。
我不知道 coredata 如何通过关系获得正确的员工。
谢谢
您可以在 NSFetchRequest 中使用 NSPredicate 获取正确的雇员。 NSPredicate 类似于数据库中使用的 where 子句。 请检查:Use NSPredicate in CoreData Fetch 和 NSPredicate in CoreData
希望对您有所帮助。
你可以从真正的sqlite文件中探索什么是实体。
例如
我有这个关系
当我添加三条记录时,我使用SliteBrowser查看SQLite文件
它有五个 table
Z 部门 Table
注意我在ZEMPLOYEE中选择的,在ZDEPARTMENT中保存了department
的id,所以很清楚核心数据关系是如何工作的。
注意:
- Z_PK 是 SQLite 中唯一的 Table
- Z_ENT 是他们的实体 ID 与 Z_PRIMARYKEY table 中列出的相同