MySQL基础(四):表的完整性约束

  • 本博客是《MySQL基础》系列博客的第四部分,主要介绍表的完整性约束条件,重头戏自然是主外键
  • 本博客既为方便自己查看复习而作,亦为你而作,望能有所裨益
  • 学习交流请联系 April_0911@163.com

基本概念

表的完整性约束条件指的是一系列用来保证表的完整性、一致性、无重复性等特性的条件。

条件分类

《MySQL基础(二):基本操作》里我们在创建表的时候已经顺带简单介绍了其中一些条件,如下图的相关设置即我们所说的表的完整性约束条件:
在这里插入图片描述
表的完整性约束条件

按键说明
PKPrimary Key,主键
NNNot Null,非空
UQUnique,索引唯一
BBinary,二进制
UN无符号
ZFZero Fill,零填充
AIAuto Increment,自增,即从1开始每次递增1
GGenerated,生成列

主键外键

我们平日常听到表的主外键之说,那么什么是表的主外键呢?它们又是干什么的呢?下面我们就来简单了解一下:

  • 表的完整性约束主要是靠表的主外键来完成的,其基本概念如下表所示:
概念定义作用个数
主键唯一标识一条记录,不能有重复的,不允许为空保证数据完整性只能有一个
外键表的外键是另一表的主键,可重复,可为空和其他表建立联系可以有多个
  • 主外键用来连接不同的表,从而方便数据查询,提高查询效率
  • 外键对事务的频繁操作会影响性能,在高并发的数据库系统中不适合添加外键
  • 示例:
    • Workbench操作
      在这里插入图片描述
    • SQL语句
alter table <数据库>.<外数据表> add index <外键名>(外键字段); -- 添加外键
alter table <数据库>.<外数据表> add constraint <外键名>
foreign key(<外键字段>) references <数据库>.<主数据表>(<主键字段>)
on delete <相关操作>  -- 相关操作可选 NO ACTION,SET NULL,CASCADE,RESTRICT
on update <相关操作>; -- 具体说明将在后面揭晓

其他条件

其他完整性约束条件应在实际业务中按需添加,只需要添加或修改关键字即可
具体可见:《MySQL基础(六):DDL语句》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值