8535浏览量

Incorrect integer value: '' for column 'id' at row 1的错误的原因分析和解决方法

来源:青橙科技 时间:2020-03-04
当出现Incorrect integer value: '' for column 'id' at row 1的错误的原因分析和解决方法

原因分析:

实践调试过程中发现mysql5以上版本,如果是空值应该要写NULL,数据库的字段如果空都应该设置默认值,否则就会报上面的错误;

这种情况说明这时候数据库开启的是默认的严格模式;

注意:这种问题一般mysql 5.x上出现!!

解决办法:

首先使用Select version();查看版本,一般会版本不一致;


官方解释说:新版本mysql对空值插入有"bug"!!!!
需要在安装mysql的时候去除默认勾选的enable strict SQL mode(也就是刚才说的严格模式)
那么如果我们安装好了mysql怎么办了,解决办法是更改配置文件,关闭严格模式!!


开启与关闭Strict Mode方法!!
找到mysql安装目录下的my.cnf(windows系统则是my.ini)文件
在sql_mode中加入STRICT_TRANS_TABLES则表示开启严格模式,如没有加入则表示非严格模式,修改后重启mysql即可!!

联系我们

一次需求提交或许正是成就一个出色产品的开始。
欢迎填写表格或发送合作邮件至: qczsky@126.com

大理青橙科技

电话:13988578755 13988578755

邮箱:qczsky@126.com

地址:大理市下关龙都春天10层

如果您无法识别验证码,请点图片更换