他のバージョンの文書 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

SET CONSTRAINTS

Name

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

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で定義されています。