SET CONSTRAINTS

Name

SET CONSTRAINTS -- 現在のSQLトランザクションの制約モードを設定

Synopsis

SET CONSTRAINTS { ALL | constraint [, ...] } { DEFERRED | IMMEDIATE }
  

説明

SET CONSTRAINTSは、現在のトラクンザクションにお ける制約の評価方法を設定します。 IMMEDIATEモードでは、一つの文の実行が終わる毎に制 約がチェックされます。 DEFERREDモードでは、トランザクションが終了するまで 制約はチェックされません。

制約はその生成時において、常にINITIALLY DEFERREDINITIALLY IMMEDIATE DEFERRABLEINITIALLY IMMEDIATE NOT DEFERRABLEの三つのうちのい ずれかの特徴を持ちます。 三番目のものは、SET CONSTRAINTSコマンドで有効に なりません。

今のところ、外部キーの制約だけがこの設定の影響を受けます。 CHECK 制約や UNIQUE 制約は、常に初期状態で直接評価され、遅延されま せん(常にINITIALLY IMMEDIATE NOT DEFERRABLE)。

互換性

SQL92, SQL99

SET CONSTRAINTSQL92SQL99で定義されています。