首页 文章

核心数据关系是否在现实世界中使用?

提问于
浏览
1

我对Core Data非常熟悉,但我没有发现Core Data关系的任何实际用途 . 我从概念上知道他们应该做什么,但他们似乎并没有强制执行任何事情 . 标准概念(例如主键/外键,级联删除,删除由于关系约束而无法执行的值)似乎不会被强制执行 .

我读错了吗?核心数据关系实际上是否具有可执行的约束?

2 回答

  • 4

    您似乎在考虑使用SQL风格的核心数据,这是一个错误 . 它的API不是SQL-ish,即使它经常被用作数据库之类的东西 .

    大多数直接 - 外键不是"standard concept",除非您假设Core Data应遵循SQL规则 . 核心数据中的关系通常使用 in place of 外键 . 您可以使用该关系指示一个对象与某个其他对象相关 . 它's similar to how SQL might use a foreign key to relate an entry in one table to an entry in another table, but it'不是一回事 .

    它们是否用于“现实世界”?当然 - 如果核心数据没有关系,那么核心数据就没那么有用了 . 它们是具有属性的对象的核心数据等价物,该属性也是某种对象 .

  • 2

    是的,您可以通过设置不同的删除规则来控制关系 .

    有关可用配置点的更多信息,请参阅本指南:Creating Managed Object Relationships

    值得注意的是,规则仅在 save() 期间强制执行 .

相关问题