次の方法で共有


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

テーブルに対してデータの追加、更新、または削除を行う際に、CHECK 制約を無効にすることができます。制約を無効にすると、次のトランザクションを実行できます。

  • テーブルで既存の行に適用されていた特定のビジネス ルールが現在では適用されない場合、INSERT ステートメントを使用してテーブルに新しいデータの行を追加できます (Microsoft SQL Server のみ)。たとえば、以前 5 桁の数値に限定していた郵便番号を新しいデータでは 9 桁に変更するものとします。その場合、古い 5 桁の郵便番号データを新しい 9 桁の郵便番号データと共存させることができます。

  • 既存の行に適用されていた特定のビジネス ルールが現在では適用されない場合、UPDATE ステートメントを使用して既存の行を変更できます。たとえば、既存の 5 桁の郵便番号をすべて 9 桁の郵便番号に更新できます。

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

INSERT ステートメントまたは UPDATE ステートメントで CHECK 制約を無効にするには

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

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

  2. [テーブル デザイナ] メニューの [制約のチェック] をクリックします。

  3. [制約のチェック] ダイアログ ボックスで、[選択された制約のチェック] ボックスの制約をクリックします。

  4. グリッドで、[INSERTs および UPDATEs に適用] をクリックし、ドロップダウン リストの [いいえ] を選択します。

    以降のデータ変更に制約を確実に適用するには、データを追加または変更した後、このオプションを [はい] に設定します。