设置核心数据和内部联接

时间:2011-01-30 14:03:47

标签: iphone objective-c ipad sqlite core-data

我有两张桌子

通常情况下,我会将它们设置为:

Classes
--------------
ClassID int autoinc
ClassName string

Session
--------------
SessionID int autoinc
SessionName string
SessionStart date
SessionEnd date
ClassID int FK

然后我会查询会话表并加入classid上的classes表。

在使用CoreData进行设置时,我还需要ClassID吗?我看到我可以建立一个关系,但它似乎没有链接到特定列...只有一个表..

1 个答案:

答案 0 :(得分:0)

您的想法是面向数据库的,这不是坏事,但Core Data架构不是关系数据库架构。您需要考虑对象,而不是表和列。你有两个实体,而不是两个表。

框架本身处理为每个对象生成唯一标识符。这个标识符实际上只是一个实现细节。创建对象,定义关系,Core Data将处理其余的事务,包括创建桥表以处理多对多关系。