デキるエンジニアになるためには、DB技術の基礎は必須です。本連載では、豊富な実例と演習問題で、プロとして恥ずかしくない設計手順を解説します。DB設計のポイントとなる汎用的なケースを紹介しているので、通常の業務とは異なる場合でも応用できる「共通の考え方」を身に付けられます。
正規化は、データの一元管理を行うために、データベース設計で行うべき手順です。
正規化とは、データを一元管理するための理論です。
1データ1箇所の原則を実現するために、1970年にE.F.Codd氏がリレーショナルモデルの理論として提案しました。正規化の理論は、データの冗長性を排除し、更新時の整合性を維持しやすくすることを目指しています。
具体的には、属性間の関連性を分析し、属性の最適なグループ化を図ることを目的としています。 一般には第3正規化まで行えば十分といわれていますが、本来は、あてはまる場合にはきちんと第5正規化まで行う必要があります。 まず、正規化の処理をする際によく出てくる関数従属という用語の意味を復習しておきましょう。
◎ 関数従属とは
ある属性Aの値が決まると他の属性Bの値が一意に決まるとき、「属性Bは、属性Aに関数従属である」(A→B)といいます。
完全従属とは、2の属性A、Bの間でA→Bが成立し、Aが複数の属性の集合で成り立っている場合、Aのいかなる部分集合も関数従属が成立しない状態を表します。
部分従属とは、関数従属が成立しているが、完全従属ではない状態を表します。
推移従属とは、エンティティの3つの属性A、B、Cにおいて、「A→BかつB≠>AそしてB→Cである」とき「A→C」が得られ、既存の関数従属から新たな関数従属が得られる状態を表します。
Copyright © ITmedia, Inc. All Rights Reserved.