ホーム > データベーススペシャリスト試験 > 2019年

データベーススペシャリスト試験 2019年 午前208


第3正規形において存在する可能性のある関数従属はどれか。
候補キーから繰返し属性への関数従属
候補キーの真部分集合から他の候補キーの真部分集合への関数従属(正解)
候補キーの真部分集合から非キー属性への関数従属
非キー属性から他の非キー属性への関数従属

解説

第3正規形における関数従属の解説

正規化の概要

データベース設計において正規化は、データの冗長性を減らし、更新異常を防ぐために行われます。正規化は複数の段階(正規形)に分けられ、各段階で取り除かれる関数従属の種類が異なります。
正規形条件・特徴
第1正規形 (1NF)属性が原子値に分解されていること
第2正規形 (2NF)1NFの条件+部分関数従属の解消(主キーの一部に依存する非キー属性がない)
第3正規形 (3NF)2NFの条件+推移的関数従属の解消(非キー属性が他の非キー属性に依存しない)

選択肢の分析

選択肢内容正規化のどの段階で問題となるか
候補キーから繰返し属性への関数従属1NFの違反(繰り返し属性は1NF違反の原因)
候補キーの真部分集合から他の候補キーの真部分集合への関数従属3NFでも存在しうる(キー属性間の関数従属)
候補キーの真部分集合から非キー属性への関数従属2NFの違反(部分関数従属)
非キー属性から他の非キー属性への関数従属3NFの違反(推移的関数従属)

第3正規形における関数従属の特徴

  • 第3正規形 (3NF) は「非キー属性が他の非キー属性に推移的に依存しない」ことを要求します。
  • つまり、非キー属性間の関数従属(選択肢エ)は許されません。
  • また、「候補キーに部分的に依存する非キー属性(部分関数従属)」(選択肢ウ)も2NFの違反になるため、3NFでは存在しません。
  • 一方で、候補キーの真部分集合から他の候補キーの真部分集合への関数従属(選択肢イ)は許される場合があります。これはキー属性同士の依存関係であり、3NFの定義で禁止されていません。

まとめ

  • 選択肢イが正解である理由は、候補キー同士の関数従属は第3正規形で問題とされないためです。
  • 他の選択肢はそれぞれ「繰返し属性(1NF違反)」、「部分関数従属(2NF違反)」、「推移的関数従属(3NF違反)」に該当するため第3正規形では存在しえません。

参考:キーと関数従属の記号表現

  • 候補キーの真部分集合を AA、他の候補キーの真部分集合を BB
  • 非キー属性を CC とすると、
{ABは第3正規形でも存在可能ACは第2正規形違反(部分従属)CCは第3正規形違反(推移的従属)\begin{cases} A \to B & \text{は第3正規形でも存在可能} \\ A \to C & \text{は第2正規形違反(部分従属)} \\ C \to C' & \text{は第3正規形違反(推移的従属)} \end{cases}
以上の理由から、第3正規形で存在可能な関数従属は「イ: 候補キーの真部分集合から他の候補キーの真部分集合への関数従属」となります。
← 前の問題へ次の問題へ →

©︎2025 情報処理技術者試験対策アプリ