行内约束

本文为您介绍迁移 Oracle 数据库的数据至 OceanBase 数据库 Oracle 租户时,CREATE TABLE DDL 行内约束的支持转换范围。

总览

行内约束 inline_constraint 的语法如下:

[ CONSTRAINT constraint_name ]
{ [ NOT ] NULL
| UNIQUE
| PRIMARY KEY
| 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 定义约束名称。

  • 支持指定 NULL / NOT NULL 属性。

  • 支持唯一键 UNIQUE 和主键 PRIMARY KEY。

不支持的范围

  • 不支持 CHECK,会忽略该 option。

  • 不支持 references_clause 子句定义外键,会忽略该 option。

  • 不支持 constraint_state 约束状态属性,会忽略该 option。