我刚刚开始学习核心数据中的新想法 .
我有核心数据数据库,它有三个实体 Student , Department 和一个映射学生和部门的实体 . 让它命名为 StudentDepartment
学生将拥有主要学生ID部门的所有学生详细信息,其部门详细信息将包含主要部门ID
StudentDepartment将studentID和DepartmentID作为外键 .
多个学生可以注册一个部门,同一个学生可以注册到多个部门 .
如何在核心数据中创建此架构 . 如果要删除学生表中的studentID,则应在StudentDepartment表中删除后续行 . 同样,如果删除department表中的departmentID,则应在StudentDepartment中删除后续行 . 如何通过使用核心数据 Build 此关系 .
请给我一个xcmodel .
1 回答
CoreData不是一个数据库,它是一个碰巧(有时)在关系数据库之上实现的对象存储 .
实际结果是,您实际上不需要为关系映射显式创建单独的表 . 而是创建两个实体,然后在两者之间创建关系 . 根据您的描述,听起来您希望两者之间存在多对多的关系 . 在实现级别,核心数据将神奇地创建所需的关系表 .
此外,您可以为关系的每一侧 Build 删除规则,该规则要求在删除项目时执行的操作 . 在这种情况下,您需要将两者的删除规则设置为nullify,这将在删除任一端时中断关系 .