我有很多关于如何在CoreData中创建关系N:M的问题。CoreData N:M关系
如果我有两个实体A和B,并具有关系N:在ER模型M具有以产生新的表C中,将包含表A的唯一id和B.用于
实施例实体关系:
现在,在数据库模型:
考虑到前面的例子将由核心数据完成?
或者:
事实是,我真的失去了与核心数据的关系,任何帮助将受到欢迎。
对不起,我的英文,但不是很好。
我有很多关于如何在CoreData中创建关系N:M的问题。CoreData N:M关系
如果我有两个实体A和B,并具有关系N:在ER模型M具有以产生新的表C中,将包含表A的唯一id和B.用于
实施例实体关系:
现在,在数据库模型:
考虑到前面的例子将由核心数据完成?
或者:
事实是,我真的失去了与核心数据的关系,任何帮助将受到欢迎。
对不起,我的英文,但不是很好。
对此的答案是,如果要存储其他信息,则即使在Core Data中也必须使用“连接表”。您不必跟踪外键,因为这是由关系覆盖的。
通常,标准DB“连接表”具有丑陋的名称,如“tableA_tableB”。你应该努力寻找一个合适的名字来使这个概念清晰。例如:
Car <<--->> Person
成为
Car <--->> Rental <<---> Person
现在实体出租,你可以添加更多的信息,如时间。因此,举例来说,如果你想找到一个特定日期(存储的NSDate在租赁实体)之前租了一辆车的所有的人,你的断言将是这样的:
[NSPredicate predicateWithFormat:@"ANY rentals.time < %@", cutoffTime]
你的问题是没有明确。请告诉我你需要什么。 – Ganapathy
第一种方案是正确的。您可以在Xcode中的CoreData中创建多对多关系。不需要创建关联实体。 –
但是如第二种方案所示,我有一个关系“时间”的属性。我怎么能在CoreData中做到这一点? – Filowk