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