最近一个项目,在本地php环境里一切正常,ftp上传到虚拟空间后,当执行更新操作(我的目的是为了设置id为空)set id=‘’时提示:
Incorrect integer value: '' for column 'id' at row 1
解决办法:
方法1、程序端(针对无法修改mysql配置的用户,如虚拟主机、空间等)
将set id=''改成set id=NULL,如果是条件:"...where 字段名 is NULL"
方法2、修改mysql配置文件(比如在本地环境做项目)
查找mysql里的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"
然后重启即可!
本文解决在PHP项目中更新数据库id字段为空时遇到的MySQL错误。提供两种解决方案:一是程序端修改setid=''为setid=NULL;二是修改mysql配置文件的sql-mode参数,去除STRICT_TRANS_TABLES限制。适用于虚拟主机和本地开发环境。
2182

被折叠的 条评论
为什么被折叠?



