oracle数据库约束创建及删除
程序员文章站
2022-05-30 17:13:47
...
在oracle数据库中,约束分为:主键约束、外键约束、唯一约束、非空约束、检查约束。
1、主键约束
(1.1)在创建表的是时候添加主键约束:在创建表的最后添加:(当然,也可以不放在最后,放在定义类的后边,即not null 的后边)
create table src.t1(id number,qq number,constraint pk_t1_id primary key(id));
(1.2)在已有的表上添加主键约束
alter table 表名 add constraints 主键名 primary key (列名);
(1.3)删除主键约束
alter table 表名 drop constraint 主键名;
2、外键约束
(2.1)在创建表的时候添加外键约束
create table src.t2(id number,cc number,constraint fk_t2_id foreign key(id) references src.t1(id));
(2.2)在已有表中添加外键约束
alter table 需要添加外键的表名 add constraint 外键名字 foreign key (列名) references 引用表的表名(引用表的列名);
(2.3)删除外键约束
alter table 表名 drop constraint 外键名;
3、唯一约束
(3.1)在创建表的时候添加唯一约束
create table src.t3(id number,name number,constraint un_t1_qq unique(name));
(3.2)在已有表中添加唯一约束
alter table 表名 unique(列名);
(3.3)删除唯一约束
alter table 表名 drop constraint 约束名;
4、非空约束
(4.1)创建表的时候,添加非空约束
create table src.t4 (id number,name varchar2(20) constraint nn_t1_id not null);
(4.2)在已有表中添加唯一约束
alter table 表名 modify 列名 not null;
(4.3)对于非空约束是不需要删除的,如果要取消某个列的非空约束,直接使用modify语句,把not null改成null即可。
5、检查约束
(5.1)创建表的时候,添加检查约束
create table src.t5(id number,sal number,constraint ck_t3_sal check(sal between 5000 and 50000));
(5.2)在已有的表上添加检查约束
alter table 表名 add constraints check 约束名 check(约束条件);
(5.3)删除检查约束:
alter table 表名 drop constraint check 约束名;