次の方法で共有


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

更新 : 2007 年 11 月

このダイアログ ボックスを使用すると、データベースのテーブル間のリレーションシップを作成または変更できます。外部キー リレーションシップでは、外部キー制約は、主キー制約または UNIQUE 制約と連動して機能し、指定されたテーブル間に参照整合性を適用します。たとえば、Order_Details テーブルの ProductID 列に外部キー制約を設定し、この列に入力される値が Products テーブルの ProductID 列にある既存の値と必ず一致するようにできます。

このダイアログ ボックスを表示するには、外部キーが設定されているテーブルのテーブル定義を開き、テーブル定義グリッドを右クリックして、[リレーションシップ] をクリックします。

54eyz5bs.alert_note(ja-jp,VS.90).gifメモ :

使用している設定またはエディションによっては、表示されるダイアログ ボックスやメニュー コマンドがヘルプに表示されている内容と異なる場合があります。設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。詳細については、「Visual Studio の設定」を参照してください。

  • [選択したリレーションシップ]
    既存のリレーションシップが一覧表示されます。右側のグリッドにプロパティを表示するリレーションシップを選択します。このリストが空の場合、テーブルにはリレーションシップがまったく定義されていません。

  • [追加] ボタン
    新しいリレーションシップを作成します。リレーションシップを有効にする前に、[テーブルと列の指定] を設定する必要があります。

  • [削除] ボタン
    [選択された リレーションシップ] ボックスの一覧で選択したリレーションシップを削除します。

  • [全般] カテゴリ
    展開すると [作成時または再度有効化するときに既存データを確認] および [テーブルと列の指定] が表示されます。

  • [作成時または再度有効化するときに既存データを確認]
    制約を作成した時点、または制約を再度有効にした時点よりも前からテーブルに存在しているすべてのデータについて、その制約に対して検証するかどうかを指定します。

  • [テーブルと列の指定] Category
    展開すると、リレーションシップの外部キーおよび主キー (一意キー) として、どのテーブルのどの列が機能しているかわかります。これらの値を編集または定義するには、プロパティ フィールドの右にある省略記号 [(...)] をクリックします。

  • [外部キーの基本テーブル]
    選択したリレーションシップで、どのテーブルが外部キーとして機能する列を含んでいるかを示します。

  • [外部キー列]
    選択したリレーションシップで、どの列が外部キーとして機能しているかを示します。

  • [主/一意 キーの基本テーブル]
    選択したリレーションシップで、どのテーブルが主キー (一意キー) として機能する列を含んでいるかを示します。

  • [主/一意 キー列]
    選択したリレーションシップで、どの列が主キー (一意キー) として機能しているかを示します。

  • [IDENTITY] カテゴリ
    展開すると [オブジェクト名] および [説明] のプロパティ フィールドが表示されます。

  • [オブジェクト名]
    リレーションシップの名前が表示されます。新しいリレーションシップを作成した場合、このプロパティには、[テーブル デザイナ] のアクティブ ウィンドウのテーブルに基づいて、既定の名前が設定されます。名前はいつでも変更できます。

  • [説明]
    リレーションシップの説明を記述できます。より詳細な説明を記述する場合は、[説明] をクリックしてから、プロパティ フィールドの右に表示される省略記号 [(...)] をクリックします。これにより、テキストを書くことができる領域が大きくなります。

  • [テーブル デザイナ] カテゴリ
    展開すると、[作成時または再度有効化するときに既存データを確認] および [レプリケーションに対して適用] に関する情報が表示されます。

  • [レプリケーションに対して適用]
    テーブルを別のデータベースにレプリケートするときに、制約を適用するかどうかを示します。

  • [外部キーの制約を適用]
    リレーションシップの列のデータに対する変更が、外部キー リレーションシップの整合性に違反しているときに、その変更を許可するかどうかを示します。このような変更を許可する場合には [はい] を、許可しない場合には [いいえ] をクリックします。

  • [INSERT および UPDATE の指定] カテゴリ
    展開すると、そのリレーションシップの [DeleteRule の設定] および [UpdateRule の設定] に関する情報が表示されます。

  • [DeleteRule の設定]
    外部キー リレーションシップに関連するデータを持つ行を、データベースのエンド ユーザーが削除しようとした場合の処理を指定します。次のような設定を行うことができます。

    • [動作なし] 削除操作が許可されていないことをユーザーに通知するエラー メッセージが出力され、DELETE がロールバックされます。

    • [重ねて表示] 外部キー リレーションシップに関係するデータを含む行がすべて削除されます。

    • [Null に設定] テーブルのすべての外部キー列が null 値を使用できる場合、null 値が設定されます。SQL Server 2005 および SQL Server 2008 にのみ適用されます。

    • [既定値の設定] テーブルのすべての外部キー列に既定値が定義されている場合、既定値が設定されます。SQL Server 2005 および SQL Server 2008 にのみ適用されます。

  • [UpdateRule の設定]
    外部キー リレーションシップに関連するデータを持つ行を、データベースのユーザーが更新しようとした場合の処理を指定します。次のような設定を行うことができます。

    • [動作なし] 削除操作が許可されていないことをユーザーに通知するエラー メッセージが出力され、DELETE がロールバックされます。

    • [重ねて表示] 外部キー リレーションシップに関係するデータを含む行がすべて削除されます。

    • [Null に設定] テーブルのすべての外部キー列が null 値を使用できる場合、null 値が設定されます。SQL Server 2005 および SQL Server 2008 にのみ適用されます。

    • [既定値の設定] テーブルのすべての外部キー列に既定値が定義されている場合、既定値が設定されます。SQL Server 2005 および SQL Server 2008 にのみ適用されます。

参照

処理手順

方法 : テーブル間にリレーションシップを作成する

概念

参照整合性の概要

その他の技術情報

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

キーの使用