- 締切済み
Access2002 参照整合性について
テーブル間にリレーションシップを設定する場合、リレーションテーブル側に主テーブルにないレコードがあると参照整合性を設定できないにも関わらず、「結合の種類」で「3」(リレーションテーブル側の全レコードと主テーブル側の同じ結合フィールドのレコードだけを含める)を選べるのは何故でしょうか。 参照整合性を設定できた時点で、リレーションテーブル側には主テーブルにないレコードは無いということだと思うのですが・・・。 よくわからなくなってしまいました。 お答え、よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- O_cyan
- ベストアンサー率59% (745/1260)
回答No.2
>リレーションテーブル側に主テーブルにないレコードがあると参照整合性を設定できないにも関わらず、「結合の種類」で「3」(リレーションテーブル側の全レコードと主テーブル側の同じ結合フィールドのレコードだけを含める)を選べるのは何故でしょうか。 参照整合性は一連のルールを使用して関連テーブルのレコード間のリレーションシップが有効であることや関連データが誤って削除や変更されていないことを保証する機能です。もう一方のテーブルやクエリに一致するレコードがあってもなくてもテーブルやクエリのすべてのレコードが選択されるようなクエリにするために3にある外部結合があります。 >参照整合性を設定できた時点で、リレーションテーブル側には主テーブルにないレコードは無いということだと思う リレーションテーブル側に主テーブルにないレコードがあれば参照整合性を設定できません。できるという事は主テーブルにないレコードはないという事です。
- bin-chan
- ベストアンサー率33% (1403/4213)
回答No.1
参照整合性には、外部キー(FOREIGN KEY)を含むため、NULLが許される場合があるのでは?
質問者
お礼
ありがとうございました。参考になりました。
お礼
お答えいただいた内容はすべて理解している上で、わざわざ設定する必要のなさそうな結合の種類があるのは何故?と思ったのですが・・・・ ありがとうございました。