当前位置: 移动技术网 > IT编程>数据库>Mysql > MySQL之Field‘***’doesn’t have a default value错误解决办法

MySQL之Field‘***’doesn’t have a default value错误解决办法

2017年12月12日  | 移动技术网IT编程  | 我要评论

化妆品代购,养生保健小知识,陆河车祸

今天,中国博客联盟有博友反馈,zgboke.com无法提交博客,当时我正好准备去假日广场聚会,就匆匆忙忙的提交试了下,发现提交博客的时候确实报如下错误:

提示web_pic不能为空值。很纳闷,之前都可以成功提交的,为什么突然不行了?看了下网上的案例,说是需要修改mysql的配置什么的,但是目前博客联盟是挂在京东云擎的,数据库不能修改配置,按理说之前可以正常提交,后面应该也可以才对啊!

由于聚会时间快到了,就先放在一边了。回到家之后,对比了下网上的类似案例,原来是web_pic这个键值设置了不为空导致的,也就是在创建表的时候,使用了not null属性。于是进入mywebsql,登入京东云擎数据库,进行了如下操作:

提交后,发现可以成功提交了!出现这个错误的愿意,应该是我最近导入导出数据库太频繁,create tables语句出现错误导致的。

下面,整理一下网上的相同问题的其他解决办法,方便出现问题的同学参考:

1、打开my.ini,查找

sql-mode="strict_trans_tables,no_auto_create_user,no_engine_substitution"

修改为

sql-mode="no_auto_create_user,no_engine_substitution"

然后重启mysql

2、mysql 5 uses a strict mode which needs to be disabled.

in windows, goto start-->programs-->mysql->mysql instance config wizard. follow through the reconfigure instance option-->detailed configuration-->continue next a few screens. at the bottom under enable tcp/ip option there is 'enable strict mode'. deslect this option (no tick). save changes and mysql will restart.

3、看看你的数据库定义的时候是不是把主键生成方式设置为int的,但是没有设置为自增的!!或者数据定义的时候设置一个默认值就可以了。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网