主键约束(两个特性)
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