ある会社の社員の情報処理技術者試験の受験状況の一部を次に示す。
この表を関係データベースで管理するために,二つの表に分割する方法として,適切なものはどれか。
ここで,この会社には同姓同名の社員がいるものとする。
元の表は社員ID,社員名,生年月日,試験種別,試験日,合否の列をもつ(例:0001 佐藤 花子 1985/4/29 ITパスポート 2013/4/21 合 など)。
選択肢ア〜エは,それぞれ二つの表への列の分割の仕方を図で示している。
正答1
解説
正解は『ア』。
図から、元の表を「社員ID・社員名・生年月日」(社員情報)と「社員ID・試験種別・試験日・合否」(受験情報)に分割する案がアに示されている。
この分割では社員IDを外部キーとして両表を結合でき、同姓同名対策として社員IDが有効に機能する。
社員名を受験情報側の主キーにするイは同姓同名で問題が生じ、ウ・エは冗長な列配置となる。