資訊類 101年警察人員考試 資料庫問題 - 考試

Table of Contents


假設有二個實體EA(A1, A2, A3)、EB(B1, B2),且A1、B1分別為實體EA、EB之辨識鍵。
已知EA與EB存在兩種關係:1:1 的R1與N:1 的R2,且EA部分參與R1但每個EB都參與R1
;EA與EB都參與R2。說明在儘量減少屬性在關聯的重覆和空值出現的條件下,要如何將R1
和R2正確地表示在關聯裡,以底線註明關聯的主鍵。

我的想法&問題(可能有錯...):
這題說到"將R1和R2正確地表示在關聯裡",意思是說用一個關聯表裝兩個關係嗎?
若是如此

EA EB 關係為 _____EA________EB_____
R1| 1(部分) : 1(全部)
|
|
R2| N(全部) : 1(全部)

R1為1:1關係,則應將"部分參與"的主鍵放入"完全參與"做外來鍵,則EB應變為
(B1,B2,A1)

R2為N:1關係,1方的主鍵放到N方做外來鍵,則EA為(A1,A2,A3,B1)

那我應該怎麼做才能將兩個關係放入同一張表中?

新表(A1,A2,A3,B1,B2) 主鍵(A1,B1) 外來鍵A1參考到EA的A1 及 B1參考到EB的B1?

謝謝





--

All Comments

Megan avatarMegan2013-06-11
這題我有問過 你可以搜尋一下
Ursula avatarUrsula2013-06-12
不能放在同一個關聯
Harry avatarHarry2013-06-17
放在同一個關聯會出現很多NULL,而且也會發生新增刪除修改
的異常現象