具有独特约束和关系的核心数据

乔尔·奥莱·里波尔(JoelOlléRipoll)

我有一个核心数据设计,其中包含使用关系的多个表。我的数据库是SQLite。对于更新,我从JSON导入数据并使用此方法:

[NSEntityDescription insertNewObjectForEntityForName:entityName inManagedObjectContext:context]. 

我在核心数据中添加了独特的约束。如果我更新的是与另一个对象的关系的实体,它将失去连接。

例如:实体“ person”包含与“ pet_id”一对一的关系。如果我更新“宠物”,它将更改其ID,而“人”仍指向旧ID,因此它们不再相关。有办法避免这个问题吗?

汤姆·哈灵顿

我不认为这在任何地方都有记载。听起来这是正在发生的事情:

  • 您创建一个新实例。您的约束意味着该实例与现有实例匹配。但...
  • 您的新实例对此关系具有nil值。所以...
  • 关系的现有实例的值将替换为此新的nil值。

为了维持这种关系,您的新实例必须已经具有该关系的正确值。您实质上是在要求约束匹配系统忽略新实例中关系值不同的事实,而是接受其他属性的新值。

我认为您的期望是完全合理的,但是对于当前的实现不支持它,我也并不感到惊讶。我建议向Apple提交有关此问题的错误,并研究基于非约束的方法来保持数据唯一。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring Data Rest和具有独特约束的集合

来自分类Dev

如何管理具有6个实体和关系的大型ManagedObjectModel?核心数据

来自分类Dev

删除核心数据中具有递归关系的记录

来自分类Dev

具有多重关系的核心数据子查询

来自分类Dev

具有多关系的复杂核心数据谓词

来自分类Dev

具有核心数据和NSFetchedResultsController的后台线程

来自分类Dev

具有核心数据和NSFetchedResultsController的后台线程

来自分类Dev

UITableView核心数据分组和关系

来自分类Dev

核心数据关系,NSSet和ManagedObjectContext

来自分类Dev

原则映射超类和独特约束

来自分类Dev

Postgres可更新视图和独特约束

来自分类Dev

核心数据不再对关系变更触发约束

来自分类Dev

iOS Swift-具有复杂数据关系的核心数据示例

来自分类Dev

如何在核心数据中保存具有关系的实体

来自分类Dev

iOS:具有一对多关系的核心数据更新对象

来自分类Dev

具有关系超类的核心数据字典

来自分类Dev

预加载具有多对多关系的核心数据的最佳实践

来自分类Dev

解决 Django 中多对多关系的独特约束的最佳方法?

来自分类Dev

获取所有关系数据 - 核心数据

来自分类Dev

关系的核心数据属性?

来自分类Dev

与核心数据的关系故障

来自分类Dev

核心数据-关系查询

来自分类Dev

核心数据继承与关系

来自分类Dev

核心数据:与关系混淆

来自分类Dev

核心数据关系问题

来自分类Dev

不同类型的独特约束

来自分类Dev

Vertica DB中的独特约束

来自分类Dev

核心数据关系和父实体-购物车

来自分类Dev

Swift:多对多关系和mutableOrderedSetValueForKey的核心数据问题