登录
首页 >  数据库 >  MySQL

分析mysql字段设置为not null的原因

来源:SegmentFault

时间:2023-02-24 18:41:27 131浏览 收藏

本篇文章给大家分享《分析mysql字段设置为not null的原因》,覆盖了数据库的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。

为什么mysql字段要设置为

not null
?
现在 大师来跟大家解释解释

首先 我们创建一个表

asd
字段为
null
qwe
字段为
not null
,都无默认值

CREATE TABLE `tb` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`asd` VARCHAR(45) NULL,
`qwe` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtb`)
)

然后

insert tb(asd) values('123123123');
insert tb(qwe) values('123123123');

现在 我们来查看这个表

请输入图片描述


可以看出

not null
qwe
字段 未设置的时候是个空字符串
null
asd
字段 未设置的时候是个
NULL

以上结果 大家应该都可以想像到的。
那么为什么要设置

NOT NULL

因为 MYSQL不是PHP,NULL不等于空字符串
比如我们查询
qwe
为空的

select * from tb where qwe=''

可以找到

请输入图片描述


但是

select * from tb where asd=''

则什么都找不到

而我们WEB开发的时候,果然有的地方插入记录 是指定空字符串,有的地方插入记录没有指定值,如果字段没设置

NOT NULL
,那就是出现:
请输入图片描述

而你查找的时候,只会出现

请输入图片描述

所以 要设置

NOT NULL

这个 就不会有
NULL
出现了。

后记:好久以前写的一篇文章,忘记了有没有发表,今天整理网盘刚好看到,就发上来了。

到这里,我们也就讲完了《分析mysql字段设置为not null的原因》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于mysql的知识点!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>