解决Incorrect integer value: ” for column ‘id’ at row 1
最近自己在测试一个开源的程序,测试中发现。该程序都添加和更新的时候回出现 Incorrect integer value: ” for column ‘id’ at row 1类是的错误!
后来我自己测试了一下:
insert into log values(”,’admin’,’31’,’002t’)
这样写就会报错: Incorrect integer value: ” for column ‘id’ at row 1
一般我们是认为应该没错误的。后来查了下MYSQL的资料。发现5以上的版本如果是空值应该要写NULL
这种问题一般mysql 5.x上出现。我用的mysql5.1
官方解释说:得知新版本mysql对空值插入有”bug”,要在安装mysql的时候去除默认勾选的enable strict SQL mode
那么如果我们安装好了mysql怎么办了,解决办法是更改mysql中的配置 my.ini
my.ini中查找sql-mode,
默认为sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”,
将其修改为sql-mode=”NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”,重启mysql后即可
那么如果是虚拟主机或者是空间怎么办了。如果你能让空间商帮你改那是最好。如果不能,那你就只能程序改改。都规范一点。空值就写 Navicat for Premium 9.0.2激活 null
今天的文章
Navicat for Premium 9.0.2激活(解决Incorrect integer value: ” for column ‘id’ at row 1)分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/119931.html