Oracle数据库添加约束

主键约束(两个特性)
1:主键必须写
2:主键不可重复

1 create table stu01(
2     sid varchar(100),
3     sname varchar2(100)
4     --constraint PK_stu01_sid primary key (sid)
5   )
6   
7   --添加约束(主键)
8     alter table stu01 add constraint PK_stu01_sid primary key(sid)   ---添加主键约束
9     alter table stu01 drop constraint PK_stu01_sid                   ---删除主键约束

唯一约束(UNIQUE)
唯一,但是可以为空

1 create table stu02(
2     sid varchar2(100),
3     sname varchar2(100),
4     constraint PK_stu02_sid primary key(sid),
5     constraint UK_stu02_sname unique(sname)
6   )

非空约束(not null)
一般简写

1   create table stu03(
2     sid varchar2(100),
3     sname varchar2(100) not null,
4     constraint PK_stu03_sid primary key(sid),
5     constraint UK_stu03_sname unique(sname)
6   )
7   

外键约束
先添加学生表、和课程表

 1  create table stu04(
 2     sid varchar2(100),
 3     sname varchar2(100) not null,
 4     constraint PK_stu04_sid primary key(sid),
 5     constraint UK_stu04_sname unique(sname)
 6   )
 7   
 8   --创建课程表
 9   create table course01(
10     cid varchar2(100),
11     cname varchar2(100) not null,
12     constraint PK_course01_cid primary key(cid),
13     constraint UK_course01_cname unique(cname)
14   )
15   
16   --最后添加成绩表,外键约束课程表和学生表
17    create table mark02(
18     sid varchar2(100),
19     cid varchar2(100),
20     mark number,
21     constraint PK_mark02_sidAndcid primary key(sid,cid),
22     constraint FK_mark02_sid foreign key(sid) references stu04(sid),
23     constraint FK_mark02_cid foreign key(cid) references course01(cid),
24     constraint UK_mark02_mark unique(mark)
25    )
26 
27   --删除外键约束
28   alter table mark01 drop constraint FK_mark02_sid
29     alter table mark01 drop constraint FK_mark02_cid
原文地址:https://www.cnblogs.com/lwl80/p/13230626.html