正規化とは?
正規化とは、関係に含まれる従属性を手掛かりに表を分解し、冗長と更新時異状を取り除く設計手法。第1正規形から順に段階を上げる。試験では、無損失分解と従属性保存を保ったまま目的の正規形へ分解できるか、その手順と結果が問われる。
データベーススペシャリスト試験の過去問では5回出題されています(2016年度〜2025年度)。
せいきか
正規化の意味
関係に含まれる従属性を手掛かりに表を分解し、冗長と更新時異状を取り除く設計手法。第1正規形から順に段階を上げる。試験では、無損失分解と従属性保存を保ったまま目的の正規形へ分解できるか、その手順と結果が問われる。
正規化の具体例
受注表が「受注番号→顧客名」と「受注番号・商品番号→数量」の従属を併せ持つとき、受注ヘッダと受注明細に分解すると、顧客名の重複が消えて修正が1行で済む。分解後は受注番号で結合すれば元の情報を復元でき、情報は失われない。
正規化は試験でどう引っ掛けられる?
正規形は高いほど良いとは限らない。結合が増えて応答時間が伸びる場合は、更新頻度と参照頻度を比べたうえで非正規化を選ぶ。また正規化は従属性の集合に対して行うもので、たまたま現在入っているデータからは決められない。
正規化と関連する用語
正規化が出た過去問
第1正規形から第5正規形までの正規化に関する記述のうち、適切なものはどれか。
正解:第3正規形までは、情報無損失でかつ関数従属性保存の分解ができる。
要点:第3正規形までは無損失かつ従属性保存の分解が可能
第3正規形までは、情報無損失(結合しても元に戻る)と関数従属性の保存を両立する分解が必ず存在することが知られている。一方でボイス・コッド正規形以降になると、無損失分解はできても関数従属性の保存が犠牲になる場合がある。
出典:平成28年度 春期 データベーススペシャリスト試験 am2 問8(IPA)第1正規形から第5正規形までの正規化に関する記述のうち、適切なものはどれか。
正解:第3正規形への分解では、情報無損失かつ関数従属性が保存される。
要点:第3正規形までは無損失かつ関数従属性保存の分解ができる
第3正規形までは、分解しても結合により元に戻せる(情報無損失)うえ、元の関数従属性も保存される分解が必ず存在する。ボイス・コッド正規形以降になると、無損失分解はできても関数従属性の保存が犠牲になる場合がある点が対比される。
出典:令和1年度 春期 データベーススペシャリスト試験 am2 問7(IPA)第1正規形から第5正規形までの正規化に関する記述のうち、適切なものはどれか。
正解:第3正規形への分解では、情報無損失かつ関数従属性が保存される。
要点:第3正規形までは無損失かつ関数従属性を保存して分解できる
第3正規形までであれば、情報を失わずに元へ復元できる(情報無損失)分解で、かつ元の関数従属性をすべて分解後の関係に保存する分解が常に可能である。一方、ボイス・コッド正規形より先へ進める分解では、無損失は保てても関数従属性の保存が犠牲になる場合がある。よってウが適切。
出典:令和3年度 秋期 データベーススペシャリスト試験 am2 問5(IPA)次の表を、第3正規形まで正規化を行った場合、少なくとも幾つの表に分割されるか。ここで、顧客の1回の注文に対して1枚の受注伝票が作られ、顧客は1回の注文で一つ以上…
正解:4
要点:部分従属と推移的従属を分離すると受注は4表に分かれる
この表には、受注番号で決まる顧客と受注日、顧客コードで決まる顧客名、商品コードで決まる商品名と単価、そして受注番号と商品コードの組で決まる受注数、という4種類の従属がある。部分従属と推移的従属を解消すると、受注・受注明細・顧客・商品の4つの表に分かれる。なお受注金額は単価と受注数から計算できる導出項目である。
出典:令和5年度 秋期 データベーススペシャリスト試験 am2 問8(IPA)次の表に対して、第3正規形まで正規化を行った場合、少なくとも幾つの表に分割されるか。ここで、顧客の1回の注文に対して一つの受注番号が割り当てられ、顧客は1回の注…
正解:4
まず受注番号と商品コードの複合キーに対し、顧客や受注日は受注番号だけで定まる部分関数従属なので、受注の見出し部分と明細部分に分ける。次に商品名と単価は商品コードに、顧客名は顧客コードに従属する推移的関数従属なので、それぞれ独立した表に切り出す。受注金額は単価と受注数から計算できる導出項目である。結果として受注・受注明細・商品・顧客の4つの表になる。
出典:令和7年度 秋期 データベーススペシャリスト試験 am2 問6(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。