我正在尝试创建一个表,该表作为主键使用其他表中的值。我的讲座说这是一个复合键(主键+外键),但我似乎无法找到如何启动它。有人可以吗尝试解释这个概念以及如何尝试实现它?
问问题
3953 次
1 回答
7
考虑由学生和课程集组成的数据。当您将其存储在 DBMS 中时,每个学生(或课程)都会有一个关联的唯一 ID,这将被称为学生(或课程)的主键
students(id, name, dob)
courses(id, name, credits)
要将学生与他们注册的课程相关联,您将创建一个如下所示的表。
student_course(student_id, course_id)
要在 mysql 中实际创建它,您可以编写如下内容:-
CREATE TABLE student_course(student_id INT NOT NULL,
course_id INT NOT NULL,
PRIMARY KEY (student_id, course_id),
FOREIGN KEY (student_id) REFERENCES student(id),
FOREIGN_KEY (course_id) REFERENCES course(id))
于 2012-12-02T16:09:14.407 回答