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

 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)
唯一,但是可以为空

 create table stu02(
sid varchar2(100),
sname varchar2(100),
constraint PK_stu02_sid primary key(sid),
constraint UK_stu02_sname unique(sname)
)

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

   create table stu03(
sid varchar2(100),
sname varchar2(100) not null,
constraint PK_stu03_sid primary key(sid),
constraint UK_stu03_sname unique(sname)
)

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

  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

最新文章

  1. Mac下设置Android源代码编译环境
  2. 介绍一个可以将Expression表达式树解析成Transact-SQL的项目Expression2Sql
  3. struts(三) ---OGNL的学习和理解
  4. javascript错误处理与调试(转)
  5. Redis中的批量删除数据库中的Key
  6. AutoEventWireup解释
  7. 【转】android 自定义控件
  8. DedeCMS 5.7 config.php 跨站脚本漏洞
  9. c#中使用SESSION需要注意的几个问题
  10. CDZSC_2015寒假新人(1)——基础 g
  11. Swift - 多线程实现方式(1) - NSThread
  12. 面向亿万级用户的QQ一般做什么?——兴趣部落的Web同构直出分享
  13. vue学习之ajax 简单快速使用axios
  14. Python解析XML文件
  15. Centos7安装net Core
  16. leetcode网学习笔记(1)
  17. 干掉win10自带的不给力的应用(转自https://jingyan.baidu.com/article/08b6a591b7398514a8092238.html)
  18. iOS CALayer 绘图模糊有锯齿的解决方案
  19. 20155331 Exp3 免杀原理与实践
  20. 解决“tar:Exiting with failure status due to previous errors”【转】

热门文章

  1. Qt之先用了再说系列-多线程方式2
  2. Vue 给子组件绑定v-model
  3. Python多进程队列间传递对象
  4. 调试备忘录-NTC电阻的使用(教程 + 代码)
  5. 第四周:卷积神经网络 part 3
  6. AMD 5700 XT显卡装ubuntu18.04.* 驱动的问题解决(全)
  7. 免费验证码接收网站&不停开小号方法
  8. openstack nova 创建虚机流程
  9. Federated Learning: Challenges, Methods, and Future Directions
  10. Java数据结构——2-3树