平成29年度 春期 午前 問25
データベース
関数従属に関する問題
属性 a の値が決まれば属性 b の値が一意に定まることを,a → b で表す。例えば,社員番号が決まれば社員名が一意に定まるということの表現は,社員番号 → 社員名である。この表記法に基づいて,図の関係が成立している属性 a〜j を,関係データベース上の三つのテーブルで定義する組合せとして,適切なものはどれか。
図(矢印の図):
a → b / a → c / a → d / a → e b → f / b → g / b → h e → i / e → 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)
答えと解説を見る
✓ これが正解イテーブル1 (a, b, c, d, e) / テーブル2 (b, f, g, h) / テーブル3 (e, i, j)
解説
矢印の出どころは三つ。そこを境にして表を切り分けます。
矢印は、左の属性が決まれば右の属性が一つに定まることを表します。この関係を関数従属と呼び、表を切り分ける手掛かりになりました。矢印の出どころを数えると、三つあります。aから出るもの、bから出るもの、eから出るものです。だから表も三つに分かれると見当がつきます。aからはb・c・d・eが定まるので、この五つで一つの表を作ります。bからはf・g・hが定まるので、bを添えた四つで別の表にしました。eからはi・jが定まるので、eを添えた三つでもう一つの表です。切り離した先には、出どころの属性を残す必要があります。aだけを一つの表に置く組は、残りの分け方が矢印と合いません。bやeを本体の表から抜いた組も、結び直す手掛かりを失います。矢印の本数ではなく、出どころの数で切るのが勘所でした。
ほかの選択肢はなぜ違うのか
- アテーブル1 (a) / テーブル2 (b…:aだけを一つの表に置いています。残る属性を二つの表へ分けました。ところがf・g・hはbから定まります。i・jはeから定まりました。出どころの違う属性を一つの表へ混ぜています。矢印の並びと噛み合いません。
- ウテーブル1 (a, b, f, g, h…:aとbとf・g・hを一つの表にまとめています。c・dだけを別の表へ切り離しました。けれどもc・dはaから定まります。aと引き離すと、結び直す手掛かりを失いました。切る場所が矢印の途中になっています。分け方が違いました。
- エテーブル1 (a, c, d) / テー…:aとc・dだけを一つの表にしています。bとeを本体から抜いてしまいました。aからはb・eも定まるはずです。抜いたままでは、元の並びを取り戻せません。切り離した先に出どころを残す必要があります。残し方が足りませんでした。
この問題の用語
- 関係データベースデータを表の形で持ち、表どうしを結びつけて扱う、最も広く使われているデータベース。データの定義や操作にはSQLを使います。
出典:平成29年度 春期 基本情報技術者試験 午前 問25
同じ用語が出る問題
- 令和6年度 科目A 問15:非構造化データに関する問題(関係データベース)
- 平成28年度 秋期 午前 問26:E-R図に関する問題(関係データベース)
- 平成28年度 春期 午前 問29:外部キーを定義する目的(関係データベース)
- 平成28年度 春期 午前 問26:関係モデルに関する問題(関係データベース)
- 平成26年度 春期 午前 問27:射影に関する問題(関係データベース)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)