MySQL——表的约束

表中的数据类型是表的约束,但是只靠数据类型来对表中的字段进行约束是不全面的,所以还要对表中的字段是否为空,是否可以重复等进行约束(not null 、default (默认值)、zerofill属性,主键、唯一键、自增长、外键)

NULL空属性

null(默认)not null(不能为空)
默认null,当插入的时候不向这个字段插入数据,不会报错,会自动插入缺省的NULL
在这里插入图片描述
但是如果设置为not null,那么在插入时就要插入合法的数据,不能插入空,默认的缺省也不会是空了,除非自己设置了默认的缺省才可以不显示插入
在这里插入图片描述

默认值(缺省值)

可以给字段设置缺省值,在插入数据的时候没有插入,就用默认值

在这里插入图片描述

列描述

在这里插入图片描述

zerofill属性

我们注意到,在创建int字段的时候,int()里会自动为我们填上一个10,这个10的含义是什么呢,int字段本身的大小就有4字节,这个10有什么意义呢,其实这里的10和数据类型的大小没有关系

这只是让数据在现实的时候用10位现实,不够的补0
在这里插入图片描述
在这里插入图片描述

主建

primary key 用来约束字段中的数据的唯一性,一张表只有一个主键,一个主键可以设置在多个字段(复合主键)

单字段主键:
在创建表字段时候就可以在后面设置
在这里插入图片描述
删除主键:因为一个表只有一个主键,所以删除的时候不用指明是那个字段
在这里插入图片描述
添加主键:
在这里插入图片描述
复合主键:多个字段都添加了主键
在这里插入图片描述

子增长

自增长一般是搭配主键使用的,一般是整数、当我没有显示的插入的时候,他会自己增长着填写
在这里插入图片描述

唯一键

唯一键里的值可以为NULL,数据不能重复,
唯一键和主键的数据都是不能重复的,区别在于主键里的值不能为NULL,一般而言,我们建议将主键设计成为和当前业务无关的字段,标识唯一性
而唯一键更多的是保证在业务上的要求(数据不能重复),唯一键可以有很多个,主键只有一个

唯一键和主键并不冲突,而是相互补充的
在这里插入图片描述

外键

从表和主表,有外键之名(存在联系),设置外键(有外键之实)
外键类数据必须是主表的主键约束或者唯一键约束
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值