Microsoft Access Club >初心者講座 > CDアルバム管理ソフト >このページ


CDアルバム管理ソフト--参照整合性とは



参照整合性は、レコードの入力や削除を行っても、テーブル間のリレーションシップが維持されるようにするための規則 です。

 

 

設定できる条件とは

次の条件を満たす場合に、参照整合性を設定することができます。

  • 主テーブルから参照するフィールドが、主キー であるか、または固有インデックスが設定されていること。

  • 関連付けるフィールドが同じデータ型であること。

  • 両方のテーブルが同じ Access データベースにあること。
    テーブルがリンク テーブルの場合、テーブルは両方とも Access の形式のものであり、リンク元のテーブルも同じデータベースに保存されている必要があります。
    他の形式のデータベースからリンクされたテーブルに対しては、参照整合性は設定できません。

     

例外的に設定できる場合

ただし、2 つの例外があります。

  • オートナンバー型フィールドと、FieldSize/フィールドサイズ プロパティに 長整数型 が設定されている数値型フィールドとを関連付けること。

  • FieldSize/フィールドサイズ プロパティに レプリケーション ID型 が設定されている数値型フィールドと、FieldSize/フィールドサイズ プロパティに レプリケーション ID型 が設定されているオートナンバー型フィールドとを関連付けること 。

 

参照設定後の規則


参照整合性を設定すると、次の規則に従う必要があります。

  • 主テーブルの主キーに存在しない関連テーブルの外部キーフィールドに、値を入力することはできません。
    ただし、外部キーに Null 値を入力し、そのレコードが関連付けられないように指定することができます。
    一例 : 存在しない得意先を受注データに割り当てることはできませんが、[得意先コード] フィールドに Null 値を入力することにより、どの得意先も割り当てられていない受注データを作成することはできます。
  • リレーション テーブルに一致したレコードが保存されている場合、主テーブルからレコードを削除することはできません。
    一例 : [受注] テーブルに担当社員として入力されている社員のレコードを [社員] テーブルで削除することはできません。
  • レコードに関連レコードがある場合、主テーブルの主キー フィールドの値は変更できません。
    一例 : [受注] テーブルに担当社員として入力されている社員の ID を [社員] テーブルで変更することはできません。

 

参照整合性の失敗
  • 参照整合性が設定されている場合に、規則に合わない操作をリレーション テーブルで行うと、メッセージが表示され、操作は実行されません。

 

フィールドの連鎖更新

  • チェック ボックスをオンにすると、主テーブルの主キー フィールドの値を変更したとき、関連するテーブルの対応するレコードの値がある場合は、自動的に更新されます。

 

レコードの連鎖削除

  • チェック ボックスをオンにすると、主テーブルの主キー フィールドの値を削除したとき、関連するテーブルの対応するレコードの値がある場合は、自動的に削除されます。


CDアルバム管理ソフト--参照整合性とは


 

-Microsoft Access Club-