Home  >  Article  >  Backend Development  >  关于mysql的not null字段有关问题

关于mysql的not null字段有关问题

WBOY
WBOYOriginal
2016-06-13 10:33:42808browse

关于mysql的not null字段问题
今天遇到了一个很蛋疼的问题,关于mysql数据库的,一个设置了not null的整型字段,默认值自定义为 2,当我用insert语句向该字段插入null值的时候,为什么显示的是系统默认自动生成的整型默认值 0,而不是我自定义的默认值 2,非常纠结,如果我不对该字段做任何操作,就会自动填充自定义的默认值,为什么会这样,求高人指点,谢谢。。。。

------解决方案--------------------
null值 也是值, 即不会用默认值。如果你留空,则就会用默认值。
这个很好理解 啊
------解决方案--------------------
null 表示什么都没有
既然对数值类型字段设置了not null
那么什么都没有在数学中不就是 0 吗?
------解决方案--------------------
你若是自定议默认值了,别设为not NULL,插入的时候直接不带这字段,就是默认值
不能为空意思就得须插入值哪怕是空值,插入值了默认值就没啥用了
------解决方案--------------------

探讨

workId` int(10) unsigned NOT NULL default '3'

请问我向这个字段插入null值的时候,为什么会变成0?

引用:

你若是自定议默认值了,别设为not NULL,插入的时候直接不带这字段,就是默认值
不能为空意思就得须插入值哪怕是空值,插入值了默认值就没啥用了
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn