MySQL系列(三)数据完整性的基本操作

(1)主键约束的创建与应用
① 利用course表创建一个新表course1;

create table course1 as select * from course;

在这里插入图片描述

② 创建course1的主键约束,字段名为cname;

alter table course1 add primary key(cname);

在这里插入图片描述

③ 删除主键约束,重新创建主键值约束,字段名为courseno;

alter table course1 drop primary key;
alter table course1 add primary key(courseno);

在这里插入图片描述

④ 验证主键约束,观察主键值重复时的数据输入情况;

insert into course1 values(‘c05188’,‘电子技术’,‘必修’,64,16,2);
insert into course1 values(‘c05188’,‘编译原理’,‘必修’,64,20,3); 

由于有主键约束,课程号重复时插入失败。
在这里插入图片描述

(2)外键约束的创建和应用
① 利用score表创建一个新表score1;

create table score1 as select * from score;

在这里插入图片描述

② 对表score1添加外键;

alter table score1 add constraint fk_cou_score foreign key(courseno) references course1(courseno);

在这里插入图片描述

③ 验证外键约束,观察外键值对数据插入情况的影响;

insert into score1 values (18137221508,’c05188’,94,92);
insert into score1 values(18137221508,’c05111’,98,99);  //course1表中无‘c05111’课程号

由于有外键约束,无效课程号无法插入成绩。
在这里插入图片描述

(3)检查约束的创建和应用
① 创建检查约束,final值以0~100为界值

alter table score1 add constraint sc_check1 check (final>=0 and final<=100); 

在这里插入图片描述

② 验证检查约束,观察合法与非法数据插入的情况

insert into score1 values(1912611337,’c05109’,94,95);
insert into score1 values(1912611337,’c05108’,94,115);

由于有检查约束,第二条记录的final值大于100,因此插入失败。
在这里插入图片描述

(4)唯一约束的创建和应用
① 创建唯一约束

alter table student add unique(phone);

在这里插入图片描述

② 验证唯一约束,观察重复值数据插入的情况

select * from student;
insert into student values('19101020201','梅清','女','2001/9/7','787','13611112222','mei@163.com');
insert into student values('19101020202','乐乐','男','2001/9/27','800','13611112222','le@126.com');

由于手机号码有唯一约束,因此第二条记录不能插入成功。
在这里插入图片描述

(5)非空约束的应用。主键字段值不允许为null,输入控制观察结果

insert into course1 values (null,'计算机网络','必修','64','16','2'); 

由于主键有非空约束,因此记录插入失败。
在这里插入图片描述

(6)利用可视化工具workbench管理表的约束。可以通过可视化的窗口,对表结构中字段后面的复选按钮管理主键约束,唯一约束和非空约束。如果单击foreign keys 标签,还可以管理外键约束。

在这里插入图片描述
在这里插入图片描述
后续将每日更新一篇!小白一枚,欢迎交流学习。
Sql脚本可以私信我!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值