Mysql的约束条件之not null(非空) 与 default(默认)

博客主要介绍了Mysql的约束条件not null(非空)和default(默认)。通过创建数据库表及插入内容的操作进行演示,表明设置not null的字段不能插入null值,未设置的则可以;而设置了默认值的字段,即便不插入内容也会有默认值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mysql的约束条件之not null(非空) 与 default(默认)

我们先创建一个数据库表,这里是创建语句:

create table consumer(
    id int,
    name char(16),
    sex enum('male','female','other')not null,
    level enum('vip1','vip2','vip3'),
    hobbies set('play','music','read','run')
)

1.非空not null:

现在我们往表内插入内容:

insert into consumer values(1,'xiao','male','vip1','play,music')

运行后,我们来查看表内容:
在这里插入图片描述
not null是非空的意思——我们往表内的sex插入null试试:

insert into consumer values(2,'x',null,'vip1','play,music')

数据库报错:
在这里插入图片描述
但是别的没设置not null的,就可以为null:

insert into consumer values(2,null,'male','vip1','play,music')

运行后,查看表内容:
在这里插入图片描述
可以看到,没设置not null的就可以为空。
除了强制设定not null的,建表后,主键、分区字段等都是非空的。

2.default默认:

已经创建好了表,现在我们往表内插入语句(现在仅插入id和name):

insert into consumer(id,name) values(1,'xiao')

运行,查看表内容:
在这里插入图片描述
sex我们没有插入内容,但是有默认值,所以即便不插入,也有默认值’male’。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值