メインコンテンツへスキップ
ITパスポート2017年度 春期午前69

2017年度 春期 ITパスポート 午前69

難度標準

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

選択肢

社員ID 社員名 生年月日 社員ID 試験種別 試験日 合否
社員ID 社員名 生年月日 社員名 試験種別 試験日 合否
社員ID 社員名 生年月日 試験日 社員ID 社員名 試験種別 合否
社員ID 生年月日 試験日 社員ID 社員名 試験種別 合否

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

正解の根拠は、正規化の原則に基づいています。特に、第一正規形(1NF)の達成と、部分関数従属の解消が重要です。表を二つに分割する目的は、データの重複を避け、一貫性を保ち、更新時の異常(更新時、挿入時、削除時異常)を防ぐことです。社員IDは各社員を一意に識別する主キーとなり得ます。試験情報は、社員IDと試験種別、試験日を組み合わせることで、特定の社員の特定の試験受験状況を一意に識別できるため、これらの情報を独立した表で管理することが適切です。

詳細Layer 2

選択肢イは、社員名で試験情報を管理しようとしていますが、問題文で「同姓同名の社員がいる」と明記されているため、社員名だけでは一意に個人を特定できません。したがって、社員名で試験情報を参照することは不正確です。

補足Layer 3

選択肢ウは、社員ID、社員名、生年月日、試験日を一つの表にし、もう一つの表で社員ID、社員名、試験種別、合否としていますが、試験日と試験種別、合否が社員IDと直接関連しない(複合キーが必要になる)ため、正規化の観点から不適切です。

選択肢エは、社員ID、生年月日、試験日を一つの表にし、もう一つの表で社員ID、社員名、試験種別、合否としていますが、社員IDと生年月日、試験日という組み合わせは、一意な受験状況を表すには情報が不足しており、また社員IDと社員名、試験種別、合否という組み合わせも同様に、試験種別ごとの合否を社員IDと直接結びつけるには不十分です。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「データベース」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
正規化・SQL・トランザクション特性(ACID)・同時実行制御・分散DBの基本。
学習の進め方
ER 図 ⇄ 関係スキーマ ⇄ SQL の3者を行き来できるよう演習。3NF までの正規化を手で実行できると強い。
関連キーワード
正規化SQLACIDトランザクションロックデッドロックER図
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

データベース の他の問題