正規化とは?せいきか
正規化とは、関数従属に着目して表を分割し、重複を持つことによる更新時異状を防ぐ関係データベースの設計手法。第1正規形で繰返し項目をなくし、第2・第3正規形で主キー以外への従属を切り離す。分割すると結合が増えるため、性能要件との折り合いで非正規化を選ぶ判断まで含めて問われる。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →背景
同じ事実を複数の場所に持つと、片方だけが更新されたときにどちらが正しいのか誰にも決められなくなる。事実を1か所に置けば更新は1行で済み、矛盾が構造として起きなくなる。支援士では、この「1か所に集まる」性質が、個人情報の保管場所を特定してアクセス制御や暗号化をかける設計にそのまま効いてくる。
具体例
注文テーブルに顧客の氏名と住所を毎行持たせると、退会時の消去対象が全注文行へ散る。顧客マスタへ切り出して顧客IDで参照すれば、消去も暗号化もその表だけで完結し、注文履歴は件数の集計に使い続けられる。
試験での引っ掛け
正規形の段階が高いほど良いとは限らず、結合の増加で性能要件を満たせなければ非正規化が正解になる。ただし複製した項目を同期させる仕組みが無ければ不整合が残る。非正規化は正規化を怠ることではなく、正規形を作ったうえでの意図的な後戻りである。
関連用語
出典・参考
公式シラバスの4 開発技術 > 2. 設計 > (9) ソフトウェア設計手法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。