
事缓则圆,人缓则安,语迟则贵。
解决sql报错:Warning: #1292 Truncated incorrect DOUBLE value:
下午接到客户反馈,系统报表数据不准确,排查代码并未发现什么问题,这个客户是自己买的服务器放在公司使用的,并没有公网,局域网被攻击的可能性不大。最近项目代码没有改动过。查了很久,终于查出来原因了,记录下,避免下次犯这种低级错误。
问题出在sql上,最近虽然没有代码的改动,但上周因为字符串问题,把数据库的一个字段改了类型varchar
改了字段类型,更新数据的sql没有改,导致数据库报错:Warning: #1292 Truncated incorrect DOUBLE value:
原因:
UPDATE A SET b= 1
字段b改了数据类型后上面的写法就不对了!
应该是:
UPDATE A SET b= '1'
总结:修改数据库结构不要忘记更新sql语句。