如何在SQL中实现多重继承?

时间:2013-06-01 07:01:08

标签: multiple-inheritance

在关系数据库中,如果有一个Student表和Employee表,那么第三个表StudentAsst表示来自Student表和Employee表的多重继承。

我的问题:在SQL中如何创建StudentAsst,它的主键是什么?

1 个答案:

答案 0 :(得分:1)

由于StudentAsst是一名学生而且是一名员工,因此您的表可能有一个由EmployeeID和StudentID组成的主键:

CREATE TABLE StudentAsst
(StudentID int, 
 EmployeeID int,
 ...,
 CONSTRAINT PK_StudentAsst PRIMARY KEY (StudentID, EmployeeID),
 CONSTRAINT FK_Employee FOREIGN KEY (EmployeeId)
            REFERENCES Employee(EmployeeID),
 CONSTRAINT FK_Student FOREIGN KEY (StudentID)
            REFERENCES Student(StudentID)
 )

Here is an example与学生,教师和家长有类似情况。