一个表的多列引用同一主键的外键?

时间:2014-05-25 16:21:16

标签: database foreign-keys relational-database foreign-key-relationship

我目前正在使用SQL创建数据库,但我发现需要在一个表中的3个不同字段中使用外键。

我在学生课程表中有CourseID1,CourseID2和CourseID3。这三个字段中的每一个都需要是外来的,并且引用课程表中的CourseID字段,这是主键。

这可能吗?我该怎么做呢?

谢谢

1 个答案:

答案 0 :(得分:0)

这是可能的。你会这样做:

foreign key (CourseId1) references Courses(CourseId),
foreign key (CourseId2) references Courses(CourseId),
foreign key (CourseId3) references Courses(CourseId),

那就是说,你不想这样做。具有数字附加物的多个列通常意味着您需要关联/联结表。在这种情况下,您需要一个名为StudentCourses的表格,每个学生和每个学生都需要一行。