更新mysql表的默认值

时间:2014-02-07 13:12:00

标签: mysql sql join

为了更新表并为列分配默认值,可以使用如下语句:

UPDATE table SET a = 'value', b = DEFAULT WHERE ISNULL(c)

但是,以下情况不起作用。

UPDATE table SET a = IF(FALSE, 'value', DEFAULT)

现在,当我想要更新列并在传递给函数语句时为其指定默认值时,我该怎么办?

1 个答案:

答案 0 :(得分:2)

根据MySQL documentation,您可以在此表单的表达式中使用DEFAULT

DEFAULT(col_name)

因此,您的查询应更改为:

UPDATE table SET a = IF(FALSE, 'value', DEFAULT(a))

目前在INSERT statement的文档中详细说明了这一点,但遗憾的是,这不是UPDATE声明,这就是为什么你可能被难倒的原因:

  

您也可以使用DEFAULT(col_name)作为更通用的表单   在表达式中用于生成给定列的默认值。