在此,我将Oracle中的约束总结为6种,即:
lNOT NULL约束
lFOREIGN KEY约束
l1: NOT NULL约束和DEFAULT约束只能被创建为列级约束
l2: 其他4种则既可以被创建为列级约束,也可以被创建为表级约束
l3: 当一个约束涉及到多列时,只能被创建成表级约束
l4: 可以为其他4种约束起名,而不能给NOT NULL和DEFAULT约束起名
列级约束的添加方式:
创建表时在列后面直接定义;(1)
修改表时以修改列的方式实现;(2)
可以作为表级约束的4种约束,作为列级约束时有两种添加方式,与上面相同,区别是可以起名;
作为表级约束时有两种添加方式:
创建表时添加表级约束;(3)
修改表时添加表级约束;(4)
下面以主键为例具体说明:
Create table t1(tid number primary key); (1)
或者加约束名字: create table t1(tid number constraint pk_tid primary key);
Create table t2(tid number);
alter table t2 modify tid primary key; (2)
或者:alter table t2 modify tid number primary key;
create table t3(tid number,primary key(tid)); (3)
或者加约束名字: create table t3(tid number,constraint pk_t3id primary key(tid));
create table t4(tid number);
alter table t4 add primary key(tid); (4)
或者加约束名字: alter table t4 add constraint pk_t4id primary key(tid);