正規化 は、データの 重複や矛盾が起きないように、テーブル の形を整理する 設計手法です。同じ情報をあちこちに持たず、1か所にまとめるのが基本方針です。
たとえば、注文のたびに会員名まで書いていると、こうなります。
【正規化の前】1つの表に何でも詰め込む
注文ID 会員名 会員住所 商品
1 田中 東京都… 本
2 田中 東京都… ペン ← 田中の情報が重複
会員名が重複し、田中さんが引っ越すと 全部の行を直す 必要が生じ、直し漏れが矛盾を生みます。そこで表を分けます。
【正規化の後】会員は会員表に1回だけ
会員表: 会員ID 会員名 住所
注文表: 注文ID 会員ID(外部キー) 商品
こうすれば、会員情報は1か所。修正も1回で済み、外部キー で正しくつながります。必要なときは JOIN で合流させます。ただし、分けすぎると結合が増えて遅くなる場面もあり、あえて重複を許す「非正規化」を選ぶこともあります。バランスが設計の腕の見せどころです。