2008/12/15
【誰にでもできる!システム開発】第4正規化・第5正規化
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
『誰にでもできる!システム開発』 2008/12/15 号
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ご愛読、ありがとうございます。
このメールマガジンは、システム開発を始めたばかりの方、これから始める
方向けに、筆者が日頃から心がけていることをお話しています。
扱う内容については、テクニックと考え方を半分ずつで構成しています。
思っていた内容と違う、つまらない、読む気力が無くなったという方、
購読解除はこちらからできます。
http://www.mag2.com/m/0000263428.html
著者プロフィール
http://www.shiga-it-office.com/mailmagazine/writer.html
事務所概要
http://www.shiga-it-office.com/profile.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■第27回 第4正規化・第5正規化
────────────────────────────────────
前回、第3正規化までお話しましたが、正規化は第5まで存在します。
しかし、実際の業務では第3正規化までで終わりにすることが一般的です。
そこで今回、あえて第4、第5正規化を紹介することで、なぜ第3正規化まで
とすることが多いのか考えてみたいと思います。
ちなみに、第4正規化の前に「ボイスコッド正規化」というのがあるのです
が、ちょっと分かりにくいところがありますので、順番を変えて次回紹介し
ようと思います。
●第4・第5正規化の対象
いきなり核心に触れてしまいますが、第3正規形までのテーブルは、キー項
目が決まると非キー項目も決まる(関数従属)という性質があります。
この性質があるために、キーは分解できないのですが、第4・第5正規化はキ
ーの分解を行います。
一見矛盾している話のようですけれど、対照表(関連表)のようにキーのみ
の表では状況によって分解が可能になります。
この対照表、表Aと表Bの関連が他対他であるとき、キーの組み合わせを持
った表を作成することで、1対他と他対1の関連を作り出します。
例を、社員と趣味の関係で考えてみます。
ある社員の趣味が読書と映画鑑賞だとすると、複数の趣味が存在ということ
になりますし、読書が趣味の社員も相当多く居ると思われますので、他対他
の関係になります。
これを対照表にすると、以下のようになります。
-------------------
| 社員 | 趣味 |
+------+----------+
| 田中 | 読書 |
+------+----------+
| 田中 | 映画鑑賞 |
+------+----------+
| 鈴木 | 読書 |
+------+----------+
| 鈴木 | 競馬 |
+------+----------+
| 佐藤 | 映画鑑賞 |
-------------------
社員が決まると趣味の集合が決まりますね。
このように集合に対する従属性を多値従属性といいます。
●第4正規化
では、以下のような表ではどうでしょうか。
--------------------------
| 部署 | 社員 | 支給品 |
+------+------+----------+
| 総務 | 田中 | 鉛筆 |
+------+------+----------+
| 総務 | 田中 | ノート |
+------+------+----------+
| 総務 | 田中 | 消しゴム |
+------+------+----------+
| 総務 | 佐藤 | 鉛筆 |
+------+------+----------+
| 総務 | 佐藤 | ノート |
+------+------+----------+
| 総務 | 佐藤 | 消しゴム |
+------+------+----------+
| 営業 | 鈴木 | ノートPC |
+------+------+----------+
| 営業 | 鈴木 | 携帯電話 |
+------+------+----------+
| 営業 | 後藤 | ノートPC |
+------+------+----------+
| 営業 | 後藤 | 携帯電話 |
+------+------+----------+
| 営業 | 池田 | ノートPC |
+------+------+----------+
| 営業 | 池田 | 携帯電話 |
--------------------------
この表では、部署に対して社員の集合が決まるし、内線の集合も決まる性質
があります。
第4正規化では、このように多値従属性が複数存在するとき、それぞれの多
値従属性に注目して分割します。
--------------- -------------------
| 部署 | 社員 | | 部署 | 支給品 |
+------+------+ +------+----------+
| 総務 | 田中 | | 総務 | 鉛筆 |
+------+------+ +------+----------+
| 総務 | 佐藤 | | 総務 | ノート |
+------+------+ +------+----------+
| 営業 | 鈴木 | | 総務 | 消しゴム |
+------+------+ +------+----------+
| 営業 | 後藤 | | 営業 | ノートPC |
+------+------+ +------+----------+
| 営業 | 池田 | | 営業 | 携帯電話 |
--------------- -------------------
さて、第4正規化を行わない場合、社員・支給品を登録しないとデータの登
録が行えません。(キー項目にNULLは入れられません)
また、部署に所属する社員のデータすべてを削除すると、部署ごとの支給品
が分からなくなってしまいますね。
●第5正規化
第5正規化は、分解後の表を結合すると元の表に戻せるように分解します。
もっと分かりやすく言うと、全ての組み合わせを考慮して分解します。
上記の表を例にすると、
--------------- ------------------- -------------------
| 部署 | 社員 | | 部署 | 支給品 | | 社員 | 支給品 |
+------+------+ +------+----------+ +------+----------+
| 総務 | 田中 | | 総務 | 鉛筆 | | 田中 | 鉛筆 |
+------+------+ +------+----------+ +------+----------+
| 総務 | 佐藤 | | 総務 | ノート | | 田中 | ノート |
+------+------+ +------+----------+ +------+----------+
| 営業 | 鈴木 | | 総務 | 消しゴム | | 田中 | 消しゴム |
+------+------+ +------+----------+ +------+----------+
| 営業 | 後藤 | | 営業 | ノートPC | | 佐藤 | 鉛筆 |
+------+------+ +------+----------+ +------+----------+
| 営業 | 池田 | | 営業 | 携帯電話 | | 佐藤 | ノート |
--------------- ------------------- +------+----------+
| 佐藤 | 消しゴム |
+------+----------+
| 鈴木 | ノートPC |
+------+----------+
| 鈴木 | 携帯電話 |
+------+----------+
| 後藤 | ノートPC |
+------+----------+
| 後藤 | 携帯電話 |
+------+----------+
| 池田 | ノートPC |
+------+----------+
| 池田 | 携帯電話 |
-------------------
第5正規化を行わない場合、各項目がキーですので、全てのデータが揃って
からでないと登録ができません。
さて、なぜ第3正規化までで十分なのか分かりましたでしょうか。
まず1つ目の理由として、データが揃わないと登録できないという制限が発
生する事。
2つ目の理由として、2つの表の関連表であれば、そもそも正規化が不要だ
からということになります。
------------------------------------------------------------------------
■編集後記
最後までお読みいただき、ありがとうございました。
先週末に風邪をひきました。
少し落ち着いてから病院に行ったのですが、それでも38.9度もあり、具合が
悪いというのにインフルエンザの検査を受けさせられました。
幸いなことにインフルエンザでは無かったのですが、最近では新型ウィルス
への対応として、検査体制や蔓延を防ぐ対策として強制的に入院させたりす
るのだそうです。徹底してますね。
タミフルなどの抗ウィルス剤も備蓄されていますが、新型ウィルスに効果が
あるかは未知数でして、もし効かないとなると大量の死者が出ることは予想
されますので、みなさんも症状があれば病院に行きましょう。
ご感想・ご意見・ご要望などありましたら、気軽にご連絡ください♪
では、また次回お会いしましょう!
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
『誰にでもできる!システム開発』 2008/12/15 号
本日のメールマガジンを読んだ感想をお聞かせください。
お寄せいただいた感想は、メールマガジン上で紹介させていただくことが
ありますので、ご了承ください。
配信中止はこちらから↓
http://www.mag2.com/m/0000263428.html
メールアドレスの変更はこちらから↓
http://www.mag2.com/m/0000263428.html
ご意見&ご感想はこちらから↓
http://www.shiga-it-office.com/mailmagazine/ImpressionFrom.html
コンサルティングのご相談はこちらから↓
http://www.shiga-it-office.com/inquiry.html
発行元 志賀IT事務所
http://www.shiga-it-office.com/
関連メールマガジン 「誰にでもできる!インターネット活用術」
http://www.mag2.com/m/0000263426.html
関連ブログ
☆コンサル日和
http://d.hatena.ne.jp/kei_onpu/
☆爆裂!C#野郎
http://csharp.yaminabe.info/
☆10年戦える開発技術
http://10year.yaminabe.info/
☆情報処理技術者試験午前対策
http://am.yaminabe.info/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


