EER圖轉relational schema
- 主鍵(prime key)爲實線, 外鍵(foreign key)或者弱實體的主鍵爲虛線, 連接線指向原實體.
- 方框是實體, 菱形代表關係, 圈代表屬性. 雙線連接關係是完全參與(fully participation), 單線是部分參與(partial participation).
例題1
答案1
- 這裏的U是從屬關係(subtype relationship),開口對着父實體. 子實體會繼承父實體的主鍵. 另外, 子實體的主鍵在EER圖中不需要寫出.
- 雙線方框是弱實體(weak entity), 弱實體要完全參與弱關係(雙線菱形), 且其主鍵畫虛線.
- 雙圈是多值屬性(multi-valued attribute), 在relational schema時要提出單獨做表, 繼承原實體的所有主鍵, 其自帶的屬性也作爲主鍵之一.
- 當出現NN關係(多對多, N-N relationship)時, 需建立新表, 並同時繼承關係雙方的所有主鍵.
- 當出現1N關係(1-N relationship)時, 在N主體的表裏添加1主體的主鍵作爲外鍵(見例題3的B與C). 或者可以單獨建表, 並從對應N的主體繼承主鍵, 從對應1的主體繼承外鍵(見例題5的Senior與Junior).
例題2
答案2
- 當出現N元關係(N-ary relationship)時, 與NN關係類似, 建立新表, 所有主鍵由對應N的主體提供, 對應1的主體只提供外鍵.
例題3
答案3
- 這裏的圓圈帶u爲並集(union), 可以當做不交集(disjoint, 圓圈帶d)的反義詞. 也就是說E是D與A的共同的父集, 但D與A無相交. 所以在E中新建屬性X, 分散到A與D中.
- 實體間還有11關係(一一對應), 在schema中可以對任一實體的表中添加另一實體的主鍵作爲外鍵.
例題4
答案4
- 如果是圓圈帶o, 則意爲覆蓋(overlapping). D爲B和C的父集與交集, B與C之間可以重疊(實例見例題5).
例題5
答案5
- 假設實體A通過disjoint分成實體B與實體C, 那麼直接理解爲B與C都是A的子實體就好了. 在作表時, overlapping與disjoint無區別.