次の方法で共有


参照整合性の概要

参照整合性は、関連テーブルの行の間のリレーションシップが有効であることを保証し、関連するデータを誤って削除したり変更したりしないようにするための、規則の体系です。

注意

SQL Server 2012 形式のデータベースのための新しいバージョンのテーブル デザイナーが表示されます。このトピックでは、SQL Server の以前の形式のデータベースで使用する旧バージョンのテーブル デザイナーについて説明します。

新しいバージョンでは、テーブル定義をグラフィカル インターフェイスから変更することも、スクリプト ペインで直接変更することもできます。グラフィカル インターフェイスを使用すると、スクリプト ペインでのテーブルの定義が自動的に更新されます。スクリプト ペインで SQL コードを適用するには、[更新] ボタンをクリックします。新しいバージョンの詳細については、「方法: テーブル デザイナーを使用してデータベース オブジェクトを作成する」を参照してください。

手順

次の条件がすべて満たされている場合は、参照整合性を設定できます。

  • 主テーブルの対応する列が主キーである、または UNIQUE 制約を設定されている。

  • 外部キー テーブルの関連する列に、同じデータ型とサイズが設定されている。

参照整合性が適用されている場合は、次の規則に従う必要があります。

  • 関連テーブルの主キーに存在していない値は、関連テーブルの外部キー列に入力できません。 ただし、外部キー列に null 値を入力することはできます。 たとえば、employee テーブルに存在しない従業員に仕事を割り当てることはできませんが、employee テーブルの job_id 列に null 値を入力することで、従業員に仕事が割り当てられていないことを示すことはできます。

  • 主キー テーブルの行に対応する行が関連テーブルに存在する場合は、主キー テーブルからその行を削除できません。 たとえば、jobs テーブルのある行で示される仕事に割り当てられている従業員が employee テーブルに存在する場合は、jobs テーブルからその行を削除できません。

  • 主キー テーブルの行に関連付けられた行がある場合は、主キーの値を変更できません。 たとえば、jobs テーブルの行の job_id 値は、employee テーブルの行に同じ job_id を持つ従業員がいる場合は、変更できません。

参照

関連項目

[外部キーのリレーションシップ] ダイアログ ボックス

その他の技術情報

リレーションシップの使用

データベース オブジェクト