本文為您介紹遷移 Oracle 資料庫的資料至 OceanBase 資料庫 Oracle 租戶時,CREATE TABLE DDL 行外約束的支援轉換範圍。
總覽
行外約束 out_of_line_constraint 的文法如下:
[ CONSTRAINT constraint_name ]
{ UNIQUE (column [, column ]...)
| PRIMARY KEY (column [, column ]...)
| FOREIGN KEY (column [, column ]...) references_clause
| CHECK (condition)
} [ constraint_state ]
references_clause:
REFERENCES [ schema_name. ] object [ (column [, column ]...) ]
[ON DELETE { CASCADE | SET NULL } ]
constraint_state:
[ [NOT] DEFERRABLE [INITIALLY {IMMEDIATE | DEFERRED}]
| INITIALLY { IMMEDIATE | DEFERRED } [ NOT ] [ DEFERRABLE ]
]
[ RELY | NORELY ]
[ using_index_clause ]
[ ENABLE | DISABLE ]
[ VALIDATE | NOVALIDATE ]
[ exceptions_clause ]支援的範圍
支援
CONSTRAINT constraint_name定義約束名稱。支援定義
UNIQUE (column [, column ]...)唯一鍵和PRIMARY KEY (column [, column ]...)主鍵。支援定義 CHECK 條件約束。
支援
FOREIGN KEY (column [, column ]...) references_clause子句定義外鍵,可以設定過濾。支援 CHECK 條件約束下
constraint_state約束狀態屬性中的ENABLE/DISABLE、VALIDATE/NOVALIDATE和RELY/NORELY屬性,其它屬性忽略。
不支援的範圍
constraint_state 約束狀態屬性:除 CHECK 條件約束下支援 ENABLE、DISABLE、VALIDATE、NOVALIDATE、RELY 和 NORELY 屬性外,其它約束下均不支援,會忽略該 option。