Share via


INSERT ステートメントまたは UPDATE ステートメントで外部キー制約を無効にする方法 (Visual Database Tools)

新しいデータが制約に違反することが判明している場合、または制約がデータベース内の既存のデータにだけ適用される場合は、INSERT トランザクションまたは UPDATE トランザクションの実行中に外部キー制約を無効にするオプションを選択します。

INSERT ステートメントまたは UPDATE ステートメントに対して外部キー制約を無効にするには

  1. オブジェクト エクスプローラで、制約が設定されたテーブルを右クリックし、[デザイン] をクリックします。

    テーブル デザイナにテーブルが表示されます。

  2. [テーブル デザイナ] メニューの [リレーションシップ] をクリックします。

  3. [外部キーのリレーションシップ] ダイアログ ボックスの [選択されたリレーションシップ] ボックスの一覧で、リレーションシップをクリックします。

  4. グリッドの [DeleteRule の設定] または [UpdateRule の設定] をクリックして、プロパティの左側にあるドロップダウン リスト ボックスから操作を選択します。

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

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

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

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

注意

トリガを使用してデータベース操作を行う場合は、トリガを実行するために外部キー制約を無効にする必要があります。