参照整合性とは(リレーションシップ)
今回は、「参照整合性」について説明したいと思います。
■前回、「テーブル」の「リレーションシップ」について説明しました。
リボンの「データベースツール」タブの「リレーションシップ」グループの「リレーションシップ」をクリックします。
以下のような「リレーションシップ」が表示されました。

「会社マスタ」の「会社コード」と「会社部署マスタ」の「会社コード」が結合されています。
「会社マスタ」の「会社コード」は「キーコード」になりますので「1」になっています。
「会社部署マスタ」の「会社コード」は、「キーコード」ではなく複数になりますので、「∞:無限大」に
なります。
「会社マスタ」にある「会社コード」しか「会社部署マスタ」の「会社コード」には入力できません。
これが「リレーションシップ」です。
ここで、「リレーションシップ」の詳細を設定します。
上の、「会社コード」で繋がった線(結合線:赤丸印)をダブルクリックします。
以下の画面が表示されます。

上の赤丸印が結合した「テーブル」と項目です。「会社コード」になります。
下の赤丸を説明します。
「参照整合性」にチェックすると
「会社マスタ」にある「会社コード」しか「会社部署マスタ」の「会社コード」には入力できないようになります。
データの整合性がとれるということです。
その下の「フィールドの連鎖更新」と「レコードの連鎖削除」を説明します。
例えば、
以下のような「会社部署マスタ」と「会社マスタ」があるとします。
「会社部署マスタ」
会社部署コード | 会社コード | 部署名 |
---|---|---|
B001 | A001 | 購買部 |
B002 | A001 | 営業部 |
B003 | A002 | 購買部 |
B004 | A002 | 営業部 |
「会社マスタ」
会社コード | 会社名 |
---|---|
A001 | 東京株式会社 |
A002 | 大阪株式会社 |
もし、「フィールドの連鎖更新」と「レコードの連鎖削除」にチェックが入っていたとします。
ある人が、間違って「会社マスタ」の「A001」「東京株式会社」を消してしまいました。
どうなるでしょうか?
そうなんです。
「リレーション」で結合している「会社部署マスタ」の「A001」のデータが皆消えてしまいます。
削除されてしまいます。
困りますね。
■必ず「参照整合性」にはチェックをしますが、その下の「フィールドの連鎖更新」と「レコードの連鎖削除」のチェックは、はずした方が良いと思います。
市販の参考書には、ここのチェックが全部入っているものがありますので注意が必要です。
おすすめ教材
- 「アクセス(Access)のシステムを無料のSQL Server 2019 Expressへ移行してみよう」教材
あなたの会社のアクセス(Access)のデータベースやシステムに不安を感じていませんか?
アクセスのデータ量が多くなり処理スピードが遅くなった。
アクセスのデータを共有したい。
セキュリティに不安がある。などと、感じている方は!!
(SQL Server 2019 Expressバージョンです。)
- 「Accessや自社運用のSQL Server Expressをクラウドへ移行してみよう
(Microsoft Azure版)」教材
「SQL Server」を「クラウド」で使用したい!!
どこからでも「SQL Server」を使いたい
「SQL Server」のコストを安くしたい
「SQL Server」の管理が大変だ
すぐに「SQL Server」を使いたい
などとお考えの方は是非お読みください。
- 1週間でアクセス(Access)のシステム開発ができる~
「在庫管理システムをアクセスで作ってみよう」教材
「アクセスのプログラム/システムを短期間で開発したい方」、
「アクセスのフォーム/VBAを完全にマスターしたい方」のための
アクセス(Access)を使って1週間でシステム開発する究極の方法とは?
- 『Excel/Accessで「QRコード」を活用しよう』教材
「Excel」や「Access」で「QRコード」を活用したい!
「QRコード」の「一括作成」や「宛名印刷」をおこないたい。
「納品書」や「出荷伝票」を「QRコード」で作成したい。
「QRコード」を「CSVファイル」で読みこみたい。
などとお考えの方は是非お読みください。
- 「アクセス(Access)プログラムの仕様書の作り方」教材
マイクロソフトアクセスを使用して、プログラムの作成/システム開発をおこないたい方の為に、 アクセス(Access)のプログラム開発に成功するために絶対に必要な「仕様書」とは?
[マイクロソフトアクセス(Access)活用法(ホームへ)]
10:451505