ある会社の社員の情報処理技術者試験の受験状況の一部を次に示す。この表を関係データベースで管理するために,二つの表に分割する方法として,適切なものはどれか。ここで,この会社には同姓同名の社員がいるものとする。

表分割は一意に識別できるキーで結び付け、重複を排除する

ITパスポート2017年度 春期69/データベース / データベース設計

社員の受験状況一覧表(社員ID・社員名・生年月日・試験種別・試験日・合否の6項目、5行)と、それを二つの表に分割する4つの案(ア〜エ)の表構成。
社員の受験状況一覧表(社員ID・社員名・生年月日・試験種別・試験日・合否の6項目、5行)と、それを二つの表に分割する4つの案(ア〜エ)の表構成。
元表:
社員ID社員名生年月日試験種別試験日合否
0001佐藤 花子1985/4/29ITパスポート2013/4/21
0002鈴木 一郎1990/11/3基本情報技術者2013/4/21
0003高橋 二郎1992/2/11ITパスポート2013/4/21
0001佐藤 花子1985/4/29基本情報技術者2013/10/20
0003高橋 二郎1992/2/11ITパスポート2013/10/20
分割案: ア: (社員ID, 社員名, 生年月日) + (社員ID, 試験種別, 試験日, 合否) イ: (社員ID, 社員名, 生年月日) + (社員名, 試験種別, 試験日, 合否) ウ: (社員ID, 社員名, 生年月日, 試験日) + (社員ID, 社員名, 試験種別, 合否) エ: (社員ID, 生年月日, 試験日) + (社員ID, 社員名, 試験種別, 合否)

選択肢

正解と解説

正解: 分割案ア:(社員ID・社員名・生年月日)と(社員ID・試験種別・試験日・合否)

同姓同名の社員がいるため、社員を一意に識別できるのは社員IDだけである。したがって社員の属性(氏名・生年月日)を社員IDを主キーとする表にまとめ、受験の記録側には社員IDを外部キーとして持たせて結合できるようにする分割が適切である。社員名で結合する案は人物を一意に定められず、受験記録側に氏名や試験日を重複して持たせる案は冗長で更新時の不整合を招く。

選択肢ごとの解説

出典:平成29年度 春期 ITパスポート試験 問69(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。