UMLを用いて表した図のデータモデルを基にして設計したテーブルのうち、適切なものはどれか。
ここで、“担当委員会ID”と“所属委員会ID”は“委員会ID”を参照する外部キーである。
“役員ID”と“委員ID”は“生徒ID”を参照する外部キーである。
実線の下線は主キー、破線の下線は外部キーを表す。
ア | 委員会(委員会ID, 委員会名) 所属関連(所属委員会ID, 委員ID) 生徒(生徒ID, 氏名, 担当委員会ID) |
イ | 委員会(委員会ID, 委員会名) 役員関連(担当委員会ID, 委員ID) 生徒(生徒ID, 氏名, 所属委員会ID) |
ウ | 委員会(委員会ID, 委員会名, 役員ID) 生徒(生徒ID, 氏名, 所属委員会ID, 担当委員会ID) |
エ | 委員会(委員会ID, 委員会名, 役員ID) 生徒(生徒ID, 氏名, 所属委員会ID) |
答え ア
【解説】
“生徒”と“委員会”で「担当する」では、1対多の関係なので直接結ぶことができるが、「所属する」では多対多の関係なので間に所属の関連を持つ必要があり、それは“所属委員会”と“委員会”を要素として持つので、これをテーブルにすると
委員会(委員会ID, 委員会名)
所属関連(所属委員会ID, 委員ID)
生徒(生徒ID, 氏名, 担当委員会ID)
(ア)になる。
【キーワード】
・外部キー