2017-08-04 36 views
1

我正在研究包含此三元關係的ER模型。我知道建立這種類型關係的選項之一是將該關係轉換爲弱實體,然後使用二進制關係將該實體與其他三個實體連接起來。我不知道該怎麼做的事情是如何將它們與什麼類型的二元關係連接起來。至少有人能向我解釋我該怎麼做。如何正確建模N:N:1三元關係?

N:N:1 ternary model

回答

2

事情是這樣的......

CREATE TABLE STUDY (

    STUDENT_ID int REFERENCES STUDENT, 
    SUBJECT_ID int REFERENCES SUBJECT, 
    DEPARTMENT_ID int NOT NULL REFERENCES DEPARTMENT, 

    PRIMARY KEY (STUDENT_ID, SUBJECT_ID) 

); 

看我們有一個主鍵跨越所有列。的DEPARTMENT_ID從主鍵省略,這意味着我們可以:

  • 具有各種student_id數據/ SUBJECT_ID組合(在多行),
  • 但我們只能有一個用於給定student_id數據/ SUBJECT_ID組合DEPARTMENT_ID(簡單地因爲一行只能包含一個DEPARTMENT_ID)。

說得有些不同:給定的學生只能研究給定的主題一次,而這發生在特定的部門。

+0

Hvala Branko puno :-) – Danedesta