データベース
基本情報技術者試験 科目A免除 修了試験 201007 実施分 問32
項目 a の値が決まれば項目 b の値が一意に定まることを,a → b で表す。例えば,社員番号が決まれば社員名が一意に定まるという表現は,社員番号 → 社員名である。この表記法に基づいて,図のような関係が成立している項目 a~j を,関係データベース上の三つのテーブルで定義する組合せとして,適切なものはどれか。
関数従属図: a → b, a → c, a → d, a → e(a から b,c,d,e へ矢印)。b → f, b → g, b → h(b から f,g,h へ矢印)。e → i, e → j(e から i,j へ矢印)。
- ア テーブル 1 {a} テーブル 2 {b, c, d, e} テーブル 3 {f, g, h, i, j}
- イ テーブル 1 {a, b, c, d, e} テーブル 2 {b, f, g, h} テーブル 3 {e, i, j}
- ウ テーブル 1 {a, b, f, g, h} テーブル 2 {c, d} テーブル 3 {e, i, j}
- エ テーブル 1 {a, c, d} テーブル 2 {b, f, g, h} テーブル 3 {e, i, j}
出典:基本情報技術者試験 科目A免除 修了試験 201007 実施分 問32
答えと解説を見る
正解:イ
覚える知識
関数従属性に基づく第3正規形への分解
第3正規形では、主キー以外の属性が別の非キー属性に従属する推移的関数従属を別表に分離する。
この問題で必要なこと
a→b,c,d,e、b→f,g,h、e→i,jのとき推移的従属を分離し、{a,b,c,d,e}、{b,f,g,h}、{e,i,j}の3表に分解する。
ひっかけ
外部キーとなるb、eを元表から削除してしまい結合不能にさせる。
この知識の出題:本試験系 6 回・免除試験 32 回(公開問題での観測値)