2013-06-01 2 views
1

관계형 데이터베이스에서 Student 테이블과 Employee 테이블이 있고 Student 테이블과 Employee 테이블에서 다중 상속을 나타내는 세 번째 테이블 StudentAsst.SQL에서 다중 상속을 구현하는 방법은 무엇입니까?

내 질문 : SQL에서 StudentAsst를 만드는 방법과 기본 키는 무엇입니까?

+0

데이터베이스에는 상속이 없거나 여러 개 있습니다. 각 테이블은 독립적입니다. – Barmar

+0

관계가 무엇입니까? 직원을 학생, 학생을 asst, 직원을 asst로? (1 대 다수 등) – Sharky

답변

1

StudentAsst가 학생-A이고 직원 - 안이기 때문에, 테이블은 직원 ID와 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합니다.

+1

귀하의 질문에 대답 할지라도, 왜 당신이 StudentAsst 테이블이 필요한지 자문해야한다는 메모를 추가해야합니다. 학생 비서에게 고유 한 필드가 없으면 Student 테이블에서 Employee 테이블로 외래 키를 가져와 학생이 직원이기도하다는 것을 쉽게 알 수 있습니다. – dlebech

관련 문제