Accessのリレーションの核:外部キー(Foreign Key)とは?
外部キー(Foreign Key)とは、Accessにおいて他のテーブルの主キーを参照するために設定されるフィールドです。
テーブル同士の関連付け(リレーションシップ)を行う際に使用され、整合性のあるデータベース設計に不可欠な要素です。
外部キーの役割
- 他のテーブルとのリレーション(関係)を定義する
- 参照整合性を確保し、データの不整合を防ぐ
- テーブルを結びつけることで、一元管理・集計・抽出が可能になる
主キーと外部キーの違い
項目 | 主キー(Primary Key) | 外部キー(Foreign Key) |
目的 | テーブル内のレコードを一意に識別 | 他テーブルの主キーを参照 |
値の重複 | 不可 | 可(同じ主キーを複数回参照可能) |
NULLの可否 | 不可 | 条件により可能 |
例:顧客と注文
以下のような2つのテーブルを考えます。
顧客テーブル(主キー:顧客ID)
顧客ID | 氏名 |
1001 | 山田 太郎 |
1002 | 佐藤 花子 |
注文テーブル(外部キー:顧客ID)
注文ID | 顧客ID | 注文日 |
001 | 1001 | 2024/04/01 |
002 | 1001 | 2024/04/05 |
003 | 1002 | 2024/04/07 |
→ 注文テーブルの「顧客ID」は、顧客テーブルの「顧客ID(主キー)」を参照する外部キーです。
リレーションシップの作成
- [データベースツール]タブ → [リレーションシップ]
- 関連付けたい2つのテーブルを追加
- 主キーから外部キーにドラッグして接続
- 「参照整合性を有効にする」にチェック → [作成]
参照整合性とは?
- 外部キーの値は、必ず参照先テーブルの主キーと一致する必要がある
- 存在しない主キーを外部キーに登録できない
- 主キーを削除するときは、関連する外部キーのレコードも削除(カスケード削除)などの設定が可能
まとめ
- 外部キー: 他のテーブルの主キーを参照するためのフィールド
- 主キーと外部キーの関係でリレーションシップを構築
- データの一貫性・整合性を保つために重要
外部キーは、Accessにおけるデータベースの正確な連携と構造化に不可欠な要素です。
正しいリレーション設計により、効率的かつ信頼性の高いデータ管理が可能となります。