テーブルとは

「テーブルとは」の編集履歴(バックアップ)一覧に戻る
テーブルとは」を以下のとおり復元します。
**テーブルの分類
|CENTER:名称|CENTER:別名|CENTER:判断基準|CENTER:定義内容|
|リソース系|マスタ(系)|「~名」といえるか|ビジネスを行う上で必要な資産データを保持するテーブル。台帳的ともいえる。|
|イベント系|トランザクション(系)|「~する」といえるか&br()「~日」といえるか|行為の記録データを保持するテーブル。|

**正規化
まずは、各正規化の説明
:非正規形|全く正規化が行われていない状態のテーブル。
:第1正規形|非正規形のテーブルに対して以下のことを行ったもの。&br()1.テーブルに主キーを設定&br()2.繰り返し現れる列を別のテーブルに分離&br()3.導出列(他の列同士の演算によって算出できるなど)を削除
:第2正規形|複合主キーを構成する1つの列のみの値によって、決まる列は、別テーブルに分割する。&br()※難しくいうと、第1正規形から部分関数従属性を取り除くこと。
:第3正規形|主キーとなる列以外の値によって、他の非主キー列の値が決まることがないようにテーブルを分割した状態のこと。&br()※難しくいうと、第2正規形から推移関数従属性を取り除くこと。

:関数従属性|ある属性Aの値が決まるとき、属性Bが一意に決まることをいう。「A→B」と表記。
:移関数従属性|ある属性Aが決まると属性Bが決まり、その結果属性Cが決まるという関係。「A→B→C」と表記。(ただしB→Aは不成立)

***正規化の例1
****非正規形のテーブル
表の1レコードが、「受注番号」を主キーとして、こんなふうにレイアウトされているとする。
|受注番号|得意先番号|得意先名|担当営業番号|担当営業名|商品番号1|商品名1|単価1|数量1|金額1|商品番号2|商品名2|単価2|数量2|金額2|
1レコード中に「商品明細」が繰り返し存在する。(明細「商品番号・商品名・単価・数量・金額」が、一つのレコードの中に繰り返し存在している。)
このような繰り返し項目は、別のテーブルに分離するとともに導出項目を削除。
****第1正規形のテーブル
|受注番号|得意先番号|得意先名|担当営業番号|担当営業名|
分割した結果、つぎのテーブルの主キーは、[受注番号,商品番号]の複合主キーとなる。
|受注番号|商品番号|商品名|単価|数量|
このうち、商品名と単価は、複合主キーの商品番号によってのみ決定される([商品番号]→[商品名]、[商品番号]→[単価])ので、別テーブルとする。
****第2正規形のテーブル
|受注番号|得意先番号|得意先名|担当営業番号|担当営業名|
[得意先番号]→[得意先名]、 [担当営業番号]→[担当営業名]なので、別テーブルとする
|受注番号|商品番号|数量|

|商品番号|商品名|単価|

****第3正規形のテーブル
|受注番号|得意先番号|担当営業番号|

|得意先番号|得意先名|

|担当営業番号|担当営業名|

|受注番号|商品番号|数量|

|商品番号|商品名|単価|
&br()
&br()

復元してよろしいですか?