我正在使用 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;
请注意,还有一个DEFAULT() 函数,如上一个答案中所述;您可以使用它选择任何列的默认值以供使用。
你应该试试:
UPDATE table_name SET col = DEFAULT(col) WHERE id > 300;