次に主キーに従属するものをどんどん分離して別の表に分けていく。伝票番号と商品番号が決定していれば、商品番号に通常は商品名や単価は従属している。伝票番号にも通常、顧客名とその顧客番号は記載されているので、それを別の表にしてしまう。これが第2正規形だ。この第2正規形にすると、商品を廃品にした場合に別の商品名を商品番号に入れ替えればそのまま関係データベースを大幅に変更しなくて済むというメリットがでてくる。商品番号に従属する商品名や単価などがまさしく部分関数従属となるわけだ。
さらに第三正規形で考えると、伝票番号・顧客番号・顧客名のうち顧客番号さえわかれば顧客名は別の表にして変更にそなえたほうがよい。そうして別の表にさらに分離して、主キー以外の項目の重複がなくなるとともに従属関係(推移的従属関係)がなくなる。いわば主キー項目以外に重複がないのが第3正規形で、一番環境の変化に強い関係データベース。データの冗長性をなくすとともに、現実の変化に対応しやすくなるというのがこの正規化のメリットなのだろう。伝票番号で考えていく…という発想はでも実務向けの考え方か…
0 件のコメント:
コメントを投稿