在我正在阅读的一本书中,他们表示在教学表中,基于上图中的Schema图,带下划线的列名为Primary keys (ID, course_id, sec_id, semester, and year)
。我有点困惑,因为我原本以为你只能在表中有一个Primary Key
。我真的不明白哪些是主键,哪些是上图中的外键约束。有人可以通过这样的图表向我解释如何识别这些键吗?
此外,可以从引用主键(course_id, sec_id, semester, and year)
的节表中创建(foreigns keys)
(course_id, sec_id, semester, and year)
。那不行吗?因为对于来自部分的(course_id, sec_id, semester, and year)
的每个组合,您可以从教学表中拥有多个ID,因为每个部分可以有多个教师。因此,这意味着您从教导中引用多行的部分中获取外键,并且不会为教授形成正确的主键组合。
答案 0 :(得分:2)
您只能为表设置1个主键,但是:主键包含1个或更多列。
另一点是: 在如上图所示的图表中,您只需按照箭头即可识别引用的列。 例: advisor.i_id引用instructor.ID
希望这有帮助!
问候