如果我从实体中删除核心数据记录,是否还会删除该记录与另一个实体中另一条记录的关系?
答案 0 :(得分:8)
这取决于您为关系启用的删除规则。这些Core Data Programming Guide文档(在下面提取)。查看检查员,了解您为关系设置的选项。如果您有想要评论的特定数据模型,则应将您的问题编辑为更具体。
拒绝
如果关系目标中至少有一个对象,则无法删除源对象。例如,如果要删除部门,则必须确保该部门中的所有员工首先转移到其他地方(或被解雇!),否则无法删除部门。
抵消
将目标对象的反向关系设置为null。例如,如果删除部门,请将所有当前成员的部门设置为null。只有当员工的部门关系是可选的,或者如果您确保在下一次保存操作之前为每个员工设置新部门时,这才有意义。
级联
删除关系目的地的对象。 例如,如果删除部门,则同时解雇该部门中的所有员工。
无行动
对关系目的地的对象不执行任何操作。例如,如果您删除某个部门,请将所有员工保持原样,即使他们仍然认为他们属于该部门。