Mysql查询在更新时用默认值替换空字符串

时间:2014-11-07 07:33:06

标签: mysql

如何在更新时使用默认值替换空字符串? 我收到此错误

  

错误号码:1366       十进制值不正确:''对于第1行的'actualcost'列

我已将默认值设置为0.00,将“actualcost”字段设置为十进制数据类型。

更新查询:

 UPDATE `campaign` SET  `productid` = '29', `actualcost` = '',`expectedrevenue` = '0.00', `actualresposecount` = '0', `actualsalescount` = '0', `actualroi` = '0.00' WHERE `campaignid` = '90'

1 个答案:

答案 0 :(得分:0)

Mysql(和postgres,可能是其他人)允许使用关键字DEFAULT而不是值来插入默认值,例如:

insert into mytable (id, text_column_with_default)
values (1, default)

如果您将空白值更改为此关键字,您就可以实现目标。

它意味着您无法使用带有占位符的预备声明;你必须自己构建SQL字符串。