主键约束(两个特性)
1:主键必须写
2:主键不可重复
1
2
3
4
5
6
7
8
9
|
create table stu01(
sid varchar (100),
sname varchar2(100)
--constraint PK_stu01_sid primary key (sid)
)
--添加约束(主键)
alter table stu01 add constraint PK_stu01_sid primary key (sid) ---添加主键约束
alter table stu01 drop constraint PK_stu01_sid ---删除主键约束
|
唯一约束(UNIQUE)
唯一,但是可以为空
1
2
3
4
5
6
|
create table stu02(
sid varchar2(100),
sname varchar2(100),
constraint PK_stu02_sid primary key (sid),
constraint UK_stu02_sname unique (sname)
)
|
非空约束(not null)
一般简写
1
2
3
4
5
6
|
create table stu03(
sid varchar2(100),
sname varchar2(100) not null ,
constraint PK_stu03_sid primary key (sid),
constraint UK_stu03_sname unique (sname)
)
|
外键约束
先添加学生表、和课程表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
create table stu04(
sid varchar2(100),
sname varchar2(100) not null ,
constraint PK_stu04_sid primary key (sid),
constraint UK_stu04_sname unique (sname)
)
--创建课程表
create table course01(
cid varchar2(100),
cname varchar2(100) not null ,
constraint PK_course01_cid primary key (cid),
constraint UK_course01_cname unique (cname)
)
--最后添加成绩表,外键约束课程表和学生表
create table mark02(
sid varchar2(100),
cid varchar2(100),
mark number,
constraint PK_mark02_sidAndcid primary key (sid,cid),
constraint FK_mark02_sid foreign key (sid) references stu04(sid),
constraint FK_mark02_cid foreign key (cid) references course01(cid),
constraint UK_mark02_mark unique (mark)
)
--删除外键约束
alter table mark01 drop constraint FK_mark02_sid
alter table mark01 drop constraint FK_mark02_cid
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/lwl80/p/13230626.html