请解释一下,为什么核心数据拒绝创建如下所示的结构.
|Employee | |Department|
|------ | <<--(opt)-------inverse-------(non_opt)--> |----------|
|id (un) | |name (un) |
|fullName |
* un - unique, opt - optional
Run Code Online (Sandbox Code Playgroud)
在某些部门,零个或多个员工可以工作但每个员工必须在一个部门工作,而且只能在一个部门工作.例如,它是MySql的明显模式.对于核心数据,我做了反向关系以避免一致性错误.但核心数据有自己的愿景,这就是它对我说的:
错误:配置错误的实体:实体部门不能具有唯一性约束和一个强制性反向关系Employee.department
我已经发现了一些可疑的解决方案(使所有关系可选,从Department.name中删除唯一并"以编程方式"检查它,删除反向关系),但我想了解,我犯错误或者如果没有 - Apple正在尝试用这个奇怪的逻辑说?
小智 1
唯一约束确保实体中的记录对于给定字段是唯一的。但是,独特的约束以及对多关系会在解决冲突时导致许多奇怪的问题。
\n\n例如 \xe2\x80\x9c 对无效对象的悬挂引用。\xe2\x80\x9d
\n\n这篇文章主要关注一个可能需要几天时间才能解决的小问题。
\n\nhttp://muhammadzahidimran.com/2016/12/08/coredata-unique-constraints-and-to-many-relationship/
\n| 归档时间: |
|
| 查看次数: |
800 次 |
| 最近记录: |