方法 : INSERT ステートメントまたは UPDATE ステートメントで外部キー制約を無効にする
新しいデータが制約に違反することが判明している場合、または制約がデータベース内の既存データにだけ適用される場合は、INSERT トランザクションまたは UPDATE トランザクションの実行中に外部キー制約を無効にするオプションを選択します。
注意
実際に画面に表示されるダイアログ ボックスとメニュー コマンドは、アクティブな設定またはエディションによっては、ヘルプの説明と異なる場合があります。 設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。 詳細については、「設定の操作」を参照してください。
INSERT ステートメントまたは UPDATE ステートメントに対して外部キー制約を無効にするには
[サーバー エクスプローラー] で、制約の設定されているテーブルを選択し、[データ] メニューの [テーブル定義を開く] をクリックします。
テーブルが [テーブル デザイナー] 内で開かれます。
[テーブル デザイナー] メニューの [リレーションシップ] をクリックします。
[外部キーのリレーションシップ] ダイアログ ボックスの [選択したリレーションシップ] ボックスの一覧で、リレーションシップをクリックします。
グリッドの [DeleteRule の設定] または [UpdateRule の設定] をクリックして、プロパティの左側にあるドロップダウン リスト ボックスから操作を選択します。
[動作なし] 削除操作が許可されていないことをユーザーに通知するエラー メッセージが出力され、DELETE がロールバックされます。
[重ねて表示] 外部キー リレーションシップに関係するデータを含む行がすべて削除されます。
[Null に設定] テーブルのすべての外部キー列が null 値を使用できる場合、null 値が設定されます。 SQL Server 2005 だけに適用されます。
[既定値の設定] テーブルのすべての外部キー列に既定値が定義されている場合、既定値が設定されます。 SQL Server 2005 だけに適用されます。
注意
トリガーを使用してデータベース操作を行う場合は、トリガーを実行するために外部キー制約を無効にする必要があります。