第三正規形・とは?初心者にもわかる丁寧解説共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
第三正規形・とは?初心者にもわかる丁寧解説共起語・同意語・対義語も併せて解説!
この記事を書いた人

岡田 康介

名前:岡田 康介(おかだ こうすけ) ニックネーム:コウ、または「こうちゃん」 年齢:28歳 性別:男性 職業:ブロガー(SEOやライフスタイル系を中心に活動) 居住地:東京都(都心のワンルームマンション) 出身地:千葉県船橋市 身長:175cm 血液型:O型 誕生日:1997年4月3日 趣味:カフェ巡り、写真撮影、ランニング、読書(自己啓発やエッセイ)、映画鑑賞、ガジェット収集 性格:ポジティブでフランク、人見知りはしないタイプ。好奇心旺盛で新しいものにすぐ飛びつく性格。計画性がある一方で、思いついたらすぐ行動するフットワークの軽さもある。 1日(平日)のタイムスケジュール 7:00 起床:軽くストレッチして朝のニュースをチェック。ブラックコーヒーで目を覚ます。 7:30 朝ラン:近所の公園を30分ほどランニング。頭をリセットして新しいアイデアを考える時間。 8:30 朝食&SNSチェック:トーストやヨーグルトを食べながら、TwitterやInstagramでトレンドを確認。 9:30 ブログ執筆スタート:カフェに移動してノートPCで記事を書いたり、リサーチを進める。 12:30 昼食:お気に入りのカフェや定食屋でランチ。食事をしながら読書やネタ探し。 14:00 取材・撮影・リサーチ:街歩きをしながら写真を撮ったり、新しいお店を開拓してネタにする。 16:00 執筆&編集作業:帰宅して集中モードで記事を仕上げ、SEOチェックやアイキャッチ作成も行う。 19:00 夕食:自炊か外食。たまに友人と飲みに行って情報交換。 21:00 ブログのアクセス解析・改善点チェック:Googleアナリティクスやサーチコンソールを見て数字を分析。 22:00 映画鑑賞や趣味の時間:Amazonプライムで映画やドラマを楽しむ。 24:00 就寝:明日のアイデアをメモしてから眠りにつく。


第三正規形とは?データをきれいに整理する考え方

データベースの設計では、データを重複なく整理することが大切です。第三正規形(3NF)はそのうちの重要な考え方で、データの依存関係をできるだけシンプルに保つためのルールです。

1NF, 2NF, 3NFの流れ

まず、1NFは「すべての列が原子値」である状態、2NFは「主キーの全ての部分に関して部分関数従属性を取り除く」状態、3NFは「非キー属性同士の依存関係を取り除く」状態という風に覚えると分かりやすいです。

この流れを頭の中に置くと、データの更新時に矛盾が減り、検索も分かりやすくなります。

第三正規形の定義

第三正規形 (3NF) とは、テーブルの候補キーに対して 非キー属性が互いに依存しない ように分解した状態のことです。要点は「推移的従属性をなくす」点です。

具体的な例

例を使って説明します。ある会社の従業員データを扱う表を考えます。

able> 表の状態説明 従業員表 1NF従業員ID, 氏名, 部署ID, 部署名 問題点部署名は部署IDに依存しています。従業員が所属する部署が変わると部署名も変わる可能性があり、更新時に矛盾が起きやすいです。ble>

この状態では 推移的従属性 が混ざっており、3NFには達していません。

3NFにするには、データを分解します。代表的な分解は次のとおりです。

分解結果説明
従業員テーブル従業員ID, 氏名, 部署ID
部署テーブル部署ID, 部署名

このように分解すると、非キー属性同士の依存関係がなくなり、更新時の矛盾が起きにくくなります。

実務でのポイント

ポイント1: 候補キーをしっかり決めること。
ポイント2: 部分関数従属性は2NFで対応、推移的従属性は3NFで対応します。
ポイント3: 実務では過剰な分割を避けつつ、検索性能とのバランスを取ることが大切です。

まとめ

第三正規形は、データの重複を減らし、更新時の矛盾を減らすための設計指針です。1NF・2NFを経て、非キー属性の依存を取り除くことで、長期的に安定したデータベースを作る手助けになります。


第三正規形の同意語

第三正規形
データベース設計における正規化の第3段階。非主属性が候補キーに対して推移的依存を持たない状態で、データの重複を減らすことを目的とします。
第3正規形
同じ意味の別表現。第三正規形の略称で、非主属性の推移的依存を排除する正規形です。
3NF
Third Normal Form の英語略称。データの一貫性を保つための正規化の3番目の段階を指します。
3rd Normal Form
3NF の英語表記の一つ。第三正規形と同義です。
三正規形
第三正規形を指す別称。非主属性が主キー以外の属性に依存しすぎない形を意味します。
三正規化形
第三正規形の別表現。データの重複を減らす正規化の1つの形です。
第三正規化
3NF の正規化プロセスを指す表現。非主属性が他の非主属性を介さず主キーに直接依存することを目指します。
第3正規化形
3NF の別表現。データの整合性を高めるための正規化の段階の一つです。
第三正規化形
第三正規化を指す日本語表現。非主属性の推移的依存を排除することを意味します。

第三正規形の対義語・反対語

非正規化(Denormalization/UNF)
正規形の概念に反対する、データを冗長に保持する設計。更新や整合性の管理が難しくなる一方で、検索や挿入のパフォーマンスを向上させる場合がある。3NFの性質とは反対方向の状態。
第一正規形(1NF)
データ項目が原子値で、列に複数値が入らない最低限の正規形。3NFと比べて依存関係の整理が不十分で、冗長性が高い状態。
第二正規形(2NF)
主キーの全属性が完全従属していることを要求する正規形。3NFより前の段階で、推移従属性を含む可能性がある状態。
推移従属性を含む状態
非キー属性が別の非キー属性に従属している状態。3NFの目的はこれを排除することなので、含む状態は3NFの反対概念に近い。
部分従属性を含む状態
主キーの一部に従属する属性がある状態。2NF未満の特徴で、3NFの整理が不十分な状態を指す。
冗長性が高いデータ設計
同じ情報が複数箇所に重複して保存され、更新時の整合性維持が難しくなる設計。3NFの利点とは反対の特徴。
更新異常が発生しやすい設計
データの挿入・更新・削除時に矛盾が生じやすい設計。3NFの目的であるデータ整合性の確保とは逆の状態。

第三正規形の共起語

関数従属性
ある属性集合Xが決まれば、別の属性集合Yが一意に決定される関係。X → Y の形で表され、第三正規形の判定では X がスーパーキーか、Y が素属性かどうかを判断のポイントにします。
推移的従属性
A → B、B → C という従属性の連鎖により A → C が成り立つ関係のこと。3NFでは、非主属性が推移的に従属しないよう、分解の対象となる場合があります。
部分従属性
候補キーの一部の属性だけに従属する従属性。3NFを目指す際には、これによる冗長性を排除するための分解が検討されます。
候補キー
テーブルの中で最小の属性の組で、主キーとして選ばれる可能性のある集合のこと。複数存在することがあります。
主キー
テーブルの各行を一意に識別する属性または属性の組。参照整合性の基盤となる重要なキーです。
非主属性
候補キーに含まれない属性のこと。3NFの設計ではこれらの従属性の適切な扱いが重要です。
結合分解
3NFへ適合させるために、テーブルを複数のテーブルへ分割する操作。分解後も情報が失われないよう設計します。
無損失結合
分解後のテーブルを結合してもデータが失われず、元の情報を再現できる性質。正規化設計の重要な要件です。
正規化
データの冗長性を減らし、データ整合性を高める設計手法。1NFから段階的に適用していきます。
データ冗長性
同じデータが複数箇所に保存される状態。3NFの目的はこの冗長性を低減することです。
依存関係の保存
分解後も従属性が適切に保たれ、データの整合性が維持される性質。分解設計の評価基準になります。
リレーショナルデータベース
表と列でデータを管理するデータベースの基本モデル。正規形はこの設計思想に基づきます。
テーブル設計
データをテーブルとして整理する設計作業。3NFを意識した分解と属性選択が含まれます。
スキーマ
データベースの構造を定義する設計図。テーブル名、列、鍵、制約などを含みます。
4正規形
4NF。多値従属性を排除する正規形で、3NFの次の段階として扱われることが多い概念です。
4NF
4正規形の略。複数の独立した多値従属性が同一テーブル内に現れる場合、分解してデータの一貫性を保ちます。
5正規形
5NF。結合従属性を分解して結合の冗長性を極力排除する正規形です。
5NF
5正規形の略。結合依存を完全に満たすよう分解を進め、細粒度の整合性を確保します。

第三正規形の関連用語

第一正規形
テーブルの列の値が原子値であり、列に繰り返しのグループがない状態。
第二正規形
1NFに加えて、非素性属性が候補キーの全属性に完全に従属する状態。部分従属がないこと。
第三正規形
2NFかつ非素性属性が候補キーに対して推移的従属をしない状態。非素性属性は候補キーに直接従属する。
関数従属性
X → Y の形で、X が決定すれば Y が一意に決まる関係の性質。
全関数従属
Y が X の全ての属性の結合で決定される関係。X の一部を削ると Y が決まらなくなる場合。
部分関数従属
Y が候補キーの一部集合から決定される従属性。2NFの破れを生む原因
推移的従属
X → Z かつ Z → Y が成り立ち、Y が X 直結ではなく中間属性 Z 経由で決定される関係。3NFの回避対象。
素属性(プライム属性)
候補キーに含まれる属性のこと。
候補キー
関係を一意に識別する最小の属性の集合。複数存在することがある。
主キー
候補キーの中から実装上の識別子として選ばれたもの。
非素性属性
候補キーに含まれない属性のこと。
正規化
データの冗長性を減らし、更新異常を防ぐためにテーブルを分解する設計手法。
BCNF(ボイス・コッド正規形)
決定子がすべて超キーであることを要求する正規形。3NFより厳格。
第四正規形
4NF。多値従属性を扱い、さらに冗長性を排除する正規形。
多値従属性
X →→ Y の形で、X が Y を決定し、他の属性と独立して値を取る場合の従属性。4NFの対象。
反正規化
性能のために正規化を意図的に崩し、冗長性を許容する設計手法。
リレーション
リレーショナルデータベースの1つの表(テーブル)のこと。
データ整合性
データの正確さと整合性を保つ性質。
テーブル設計
ビジネス要件に合わせて正規化を進め、適切なテーブルに分割する設計作業。
依存関係
属性間の従属性の関係全般。

第三正規形のおすすめ参考サイト


インターネット・コンピュータの人気記事

pin番号・とは?初心者にも分かるPINの基本と使い方共起語・同意語・対義語も併せて解説!
1359viws
7-zipとは?初心者でもわかる使い方と特徴を徹底解説共起語・同意語・対義語も併せて解説!
500viws
インターネットアクセスとは?初心者にも分かる基本ガイド共起語・同意語・対義語も併せて解説!
215viws
コンポーネント化・とは?初心者にも分かる基本と実例共起語・同意語・対義語も併せて解説!
172viws
dアカウントとは何か徹底解説 登録と使い方の入門ガイド共起語・同意語・対義語も併せて解説!
157viws
ミュート・とは?初心者でもわかる使い方と意味を解説共起語・同意語・対義語も併せて解説!
132viws
単精度浮動小数点とは?初心者向けのわかりやすい解説共起語・同意語・対義語も併せて解説!
117viws
8ビット・とは?初心者にもわかる基本の解説共起語・同意語・対義語も併せて解説!
115viws
トンバックとは?初心者でもわかるトンバック対策と改善のコツ共起語・同意語・対義語も併せて解説!
113viws
公開日・とは?初心者が押さえる基本ポイントと活用法共起語・同意語・対義語も併せて解説!
109viws
lan配線・とは?初心者にも分かる自宅LANの基本と実践ガイド共起語・同意語・対義語も併せて解説!
103viws
スタンドバイとは?初心者にも分かる意味と使い方を徹底解説共起語・同意語・対義語も併せて解説!
97viws
ランダムアクセスメモリ・とは?初心者でもすぐ分かる基本と仕組みの解説共起語・同意語・対義語も併せて解説!
95viws
gimpとは?初心者にもやさしい使い方と基本を徹底解説共起語・同意語・対義語も併せて解説!
94viws
qgisとは?初心者が知っておくべき地理情報システムの入門ガイド共起語・同意語・対義語も併せて解説!
93viws
トグルボタンとは?初心者のための基本と使い方ガイド共起語・同意語・対義語も併せて解説!
89viws
コア・とは?初心者が知っておく基本と使い方共起語・同意語・対義語も併せて解説!
88viws
不適・とは?初心者にも分かる意味と使い方を詳しく解説共起語・同意語・対義語も併せて解説!
85viws
adb・とは?初心者のための使い方と基本解説共起語・同意語・対義語も併せて解説!
83viws
バリアント・とは?初心者でも分かる意味と使い方ガイド共起語・同意語・対義語も併せて解説!
83viws

新着記事

インターネット・コンピュータの関連記事