部分関数従属
Partial Functional Dependency
ぶぶんかんすうじゅうぞく
複数の属性からなる候補キーの一部だけで、非キー属性が決まってしまう関数従属。例えば、{受注番号, 商品番号}がキーの表で、商品番号だけから商品名が決まる場合が当たる。部分関数従属があると同じ商品名が何度も現れて更新時異状の原因になるので、第2正規形への正規化で別の表に分離する。
Related
他の資格での定義
Past Exams
過去問での出題
過去問で 1 回出題(データベーススペシャリスト試験 1)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
属性の組Xが決まれば属性Yが一意に決まり(X→Y)、かつXのどの真部分集合からもYが決まらない関数従属。例えば、{受注番号, 商品番号}→数量で、受注番号や商品番号の片方だけでは数量が決まらない場合が当たる。第2正規形は、非キー属性がすべての候補キーに完全関数従属している状態である。
関係データベースの設計で、関数従属性に基づいて表を分解し、データの重複と更新時異状(追加・更新・削除の異状)を取り除くこと。繰返し項目を除いた第1正規形、部分関数従属を除いた第2正規形、推移関数従属を除いた第3正規形のほか、ボイス・コッド正規形、第4・第5正規形がある。分解は、結合すれば元の表に戻せる情報無損失分解で行う。
X→Y、Y→Zが成り立ち、YからXが決まらないときに、XからZがYを介して間接的に決まる関数従属。例えば、社員番号→部署コード→部署名の関係で、部署名が社員番号に推移的に従属する場合が当たる。非キー属性が他の非キー属性に従属している状態なので、第3正規形への正規化で部署の表を分離する。
表のすべての列の値が、それ以上分解できない単一の値(原子値)であり、繰返し項目を含まない状態。非正規形の表から繰返しのグループを取り除き、1つのセルに1つの値だけが入るようにして得る。
第2正規形であり、かつ主キー以外の列が、主キーに推移的に関数従属していない状態。主キー以外の列によって値が決まる列(推移的関数従属)を別の表に分離して得る。実務のデータベース設計では、多くの場合この段階まで正規化する。
スタースキーマのディメンションテーブルを正規化し、商品→商品分類→大分類のように階層ごとの表に分割した構造。データの重複が減り、マスタの更新や整合性の維持がしやすい反面、問合せで結合する表が増えて、集計の性能や分かりやすさはスタースキーマに劣る。
