我正在使用MySQL社区服务器5.1。有没有一种方法可以通过一个查询将所有行设置回其默认列值?
我刚刚添加了很多行。对于大多数指定的列,我都有默认值,但是由于某些原因,所有列的值都改为= 0。我想知道是否存在将所有列值设置为其默认值的查询,并且我也需要where
子句的功能。
例如:
update table set values = values(default) where id > 300;
谢谢!
最佳答案
在INSERT和UPDATE查询中有一个DEFAULT关键字可以用来代替任何实际的列值:
update my_table set my_column = DEFAULT where id > 300;
如所记录的in the MySQL Manual
请注意,还有一个DEFAULT() function,如前面的答案中所述;通过它可以选择任何列的默认值以供使用。