データベースの基本14~リレーションシップの設定②

Pocket

テーブルのフィールド同士を結び付けたら、その結合のプロパティを設定していきます。

フィールド同士を結んでいる線をダブルクリックすると、下の図のようなダイアログボックスが表示されます。


ここで結合の種類を決めていきます。
リレーションシップの種類は4つあります。
①ただの結合
②参照整合性あり
③参照整合性・フィールドの連鎖更新あり
④参照整合性・フィールドの連鎖更新・レコードの連鎖削除あり

①ただの結合
特に参照整合性・フィールドの連鎖更新・レコードの連鎖削除にチェックをつけないで、そのまま作成ボタンを押すと、
ただの結合になります。結合の強さとしては弱いので下の図のようなことが起きます。

得意先CDに002という得意先がないのに、納品書テーブルには002という得意先CDでデータが入力されます。
これでは、データベースの信頼性という点では?になってしまうので、基本的にはただの結合は使わないと認識してください。

②参照整合性あり
先ほどただの結合では納品書に得意先テーブルに存在しない得意先CDでもデータが登録できましたが、
それをできないように規制するのが参照整合性です。

得意先テーブルにない得意先CDで納品書テーブルのデータを登録しようとすると、警告が出てきます。
これは得意先テーブルの得意先CDにない得意先CDを使っていて、参照整合性に違反しているという警告です。
この場合、納品書の得意先CDを得意先テーブルに登録されている得意先CDから選び直さない限り、
データの登録はできません。

このような形でデータの整合性を保証するのが参照整合性です。
リレーションシップの設定をする場合は、参照整合性を設定するのが基本です。

===========================================
確定申告期も終盤戦になりました。

資料が届いてるお客さんはほぼ終わりましたが、中にはまだ資料を持ってこない方もいらっしゃいます。
別にこちらは間に合わないなら期限後申告でいいので困りませんが、本当に困るのは自分自身ということ
そろそろに気づいてもらいたいです。

本日も最後までお読みいただきありがとうございます。