欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql·update语句报错:Data truncation: Truncated incorrect DOUBLE value: ‘系统开小差啦~请稍后再试‘

程序员文章站 2022-03-15 10:31:57
背景MySQL的update语句多次遇到这个问题,每次的原因都不同,但每个原因出现的频率都很高,在这里总结并记录一下目前为止出现过的原因。错误原因1. set后面用and连接错误示例update table set a = 'a' and b = 'b' where id = 1 (报错)解决方案:把update语句里set后面的"and"全部换成","正确示例update table set a = 'a', b = 'b' where id = 1 (正确)错误原因2....

一. 背景

  • MySQL的update语句多次遇到这个问题,每次的原因都不同,但每个原因出现的频率都很高,在这里总结并记录一下目前为止出现过的原因。

二. 错误原因总结

1. 错误原因1. set后面用and连接
  1. 错误示例
update table set a = 'a' and b = 'b' where id = 1 (报错) 
  1. 解决方案:把update语句里set后面的"and"全部换成","
  2. 正确示例
update table set a = 'a', b = 'b' where id = 1 (正确) 
2. 错误原因2. 字符串字段连接用’+'号
  1. 错误示例
# 字段a是varchar类型 update table set a = a + '12' where id = 1 (报错) # 字段a是int类型 update table set a = a + 1 where id = 1 (正确) 
  1. 解决方案:用concat()连接多个字符串
  2. 正确示例
update table set a = concat(a,'12') where id = 1 (报错) 
  1. 不同数据库对多个字符串的支持
    • mysql数据库:CONCAT(),参数可以有多个;
    • Oracle数据库:CONCAT() 或 ||,参数只能有两个;
    • SQL Server:+

三. 参考资料

  1. 当使用update语句时出现Data truncation: Truncated incorrect DOUBLE value:??错误.
  2. sql 连接表的两个字段拼接成新字段 ,形成新字段插入
  3. SQL中字符串拼接

本文地址:https://blog.csdn.net/zijikanwa/article/details/107910186

相关标签: Database