第一正規化っていうのが、データベースのところで出てきたけどよくわからん!
という人向けの記事です。
そもそも、正規化とは、「余分だったり、ダブってたり、回りくどい部分をなくすこと」です。
文字通りではありますが、第一正規化は、正規化の第一段階で、余分な部分をなくすのが目的。
わかりやすく言うと、「すべてのデータを同じ形に整えること」だと思ってください。
第一正規化とは、すべてのデータを同じ形に整えること
第一正規化とは、すべてのデータを同じ形に整えることです。
なんで、同じ形に整えるかといえば、データベースにデータを入れるためですね(*´ω`)。
データベースって何?
データベースって何?となっている人向けに簡単に説明します。
「DB(データベース)とは?データを保存しておく入れ物や箱のこと」でも書いていますが、データベースとは「データを保存しておく入れ物や箱のこと」です。
誰かの名前だったり性別だったり年齢のようなデータをポイっと投げて、保存。
その時の入れ物の役割をするのがデータベースです。
正規化とは?
正規化についても、いまいちピンとこない人がいると思います。
ざっくりと言ってしまえば、「余分だったり、ダブってたり、回りくどい部分をなくすこと」です。
試験的には「冗長性(じょうちょうせい)をなくす」みたいに言ったりします!
なぜ正規化をする必要があるのか?
なんでダブってたらダメなの?
「データを直したいと思ったときに不便だし、つじつまが合わなくなるから」です。
例えば、ある企業が、”ABC”という商品を販売してて、途中で”ABD”に変わったとします。
データベースというデータを入れる箱のあちこちに、”ABC”という名前が使われていたら、すべて”ABD”に直さないといけません。
商品名が変わるたびに、あちこち修正するのは面倒です。
不便だし、修正モレが発生すれば、つじつまが合わなくなります。
なので、ABCという名前をデータベースで管理するなら、なるべくダブりが発生しないように管理する必要があります。
第二正規化以降のポイントとなる話なので、いまは頭の片隅に!
第一正規化は、データベースに入るようにすべて同じ形に整形する
そして、第一正規化は、正規化の初歩的な段階です。
ちょっと混乱するかもしれませんが、第一正規化とは、データベースにデータが入るように、すべてのデータを同じ形に整えることです。
え?どういうこと?
データの項目の数は、同じである必要があります!
そもそもですが、データベースは、データの項目の数は先に決める必要があります。
例えば、「社員番号」と「氏名」と「部署コード」と「部署名」と「担当商品コード」と「担当商品」の6つを保存するとします。
これらを保存するための箱をデータベースに用意します。
Aさんはりんごとバナナ、Bさんはみかん、Cさんは桃とパイナップルが、それぞれの担当商品!
みたいに、「担当商品」が複数ある場合は、1つのデータとしたいところなのですが。
データの項目数は、同じでないといけないので、データベースでは上の図のようなデータは保存できません。
「担当商品」が複数ある、AさんとCさんについては、下の図のように。
第一正規化では、データベースに入るように、別のデータとして切り分けて整形する必要があります。
第一正規化というからには、第二・第三の正規化がある
第一正規化というからには、次の段階である、第二正規化と第三正規化があります。
試験では、第二と第三が圧倒的に出る!
まとめ
第一正規化とは、すべてのデータを同じ形に整えることです。
なんで、同じ形に整える必要があるのかといえば、データベースは、異なる形の(項目数がちがう)データを保存することができないからです。
コメント