Oracle学习笔记10--约束(二)

2014-11-23 21:49:01 · 作者: · 浏览: 54

salary number(10,2) check (salary >1500 and salary < 30000),

email varchar2(20),

department_id number(10),

--表级约束

constraint emp8_email_ukunique(email) ,

constraint emp8_id_pkprimarykey (id),

constraint emp8_dept_id_fk foreign key (department_id)

references departments(department_id)

)

SQL> insert into emp8

2 values(1001 , 'zhangsan' , 2000 , 'aa' , 30) ;

1 row inserted

SQL> insert into emp8

2 values(1002 ,'zhang' , 500 , 'bb' , 30);

ORA-02290:违反检查约束条件 (SCOTT.SYS_C005496),当插入的数据不满足salary的范围便会出上述错误提示。

修改约束

修改约束

添加 not null 约束 要使用 modify

Alter table emp5

Modify(salary number(10) not null )

删除约束

Alter table emp5

Drop constraint emp5_name_nn(约束名)

添加约束

Alter table emp5

Add constraint emp5_nameul unique(name);

有效化约束和无效化约束。

Alter table emp3

enable constraint emp3――name-uk (约束名)

Alter table emp3

Disable constraint emp3――name-uk (约束名)