この記事では、データベース設計において重要な「3NF(第三正規形)」について詳しく解説します。3NFは、効率的なデータベース設計を行う上で不可欠な概念です。その基準と具体的な達成方法について、表とコードを交えてご紹介します。
目次
3NF(第三正規形)とは
3NF(第三正規形)は、リレーショナルデータベースの設計において、データの整合性と効率を高めるための設計基準の一つです。冗長性を排除し、データ操作を効率化することが目的です。
3NFの基準
3NFには以下の基準があります。
- 1NF(第一正規形)になっている
- 2NF(第二正規形)になっている
- すべての属性がそのテーブルのキーに関数従属している
3NFの達成方法
3NFを達成するためには、具体的な手順が存在します。ここでは、その手順を詳細に解説します。
例題データ
達成方法を理解するために、以下のようなサンプルテーブル「売上情報」を考えます。
注文ID | 商品名 | 顧客名 | 価格 | 購入数 |
---|---|---|---|---|
1 | リンゴ | 田中 | 100 | 2 |
2 | バナナ | 田中 | 80 | 3 |
3 | リンゴ | 佐藤 | 100 | 1 |
手順1:1NFを達成する
まずは1NFを達成することが基本です。1NFでは、各属性(列)が原子的な値を持つようにします。
手順2:2NFを達成する
次に2NFを達成します。この手順で部分関数従属を排除します。
注文ID | 商品ID | 顧客ID | 購入数 |
---|---|---|---|
1 | 1001 | 2001 | 2 |
2 | 1002 | 2001 | 3 |
3 | 1001 | 2002 | 1 |
手順3:3NFを達成する
最後に、すべての非キー属性が候補キーに完全関数従属するようにします。この手順を踏むことで、3NFを達成できます。
注文ID | 商品ID | 顧客ID | 購入数 |
---|---|---|---|
1 | 1001 | 2001 | 2 |
2 | 1002 | 2001 | 3 |
3 | 1001 | 2002 | 1 |
まとめ
3NF(第三正規形)は、データベース設計における重要な基準の一つです。1NF、2NFを達成した上で、すべての属性がそのテーブルのキーに関数従属するように設計することで、3NFを達成できます。具体的な手順を理解し、効率的なデータベース設計を目指しましょう。
created by Rinker
¥4,554
(2024/11/22 10:55:01時点 Amazon調べ-詳細)
コメント