MYSQL时间戳列自动更新,即使没有更改?

MYSQL时间戳列自动更新,即使没有更改?,mysql,timestamp,Mysql,Timestamp,我在表中有一列update_date,类型是timestamp。我通过使用phpmyadmin下拉菜单将deault值设置为CURRENT_TIMESTAMP。但后来当我运行sql更新x集时。。。 仅当任何列发生更改时,它才会更新时间戳列。我想实现的是,无论是否有更改,都要在每次运行更新sql时设置当前时间。在mysql中有没有办法做到这一点,或者我需要在每次调用更新时显式地设置更新日期 谢谢您需要明确更新该列。在MySQL手册中: 当行中任何其他列的值从其当前值更改时,自动更新时间戳列(如果有

我在表中有一列update_date,类型是timestamp。我通过使用phpmyadmin下拉菜单将deault值设置为CURRENT_TIMESTAMP。但后来当我运行sql更新x集时。。。 仅当任何列发生更改时,它才会更新时间戳列。我想实现的是,无论是否有更改,都要在每次运行更新sql时设置当前时间。在mysql中有没有办法做到这一点,或者我需要在每次调用更新时显式地设置更新日期


谢谢

您需要明确更新该列。在MySQL手册中:

当行中任何其他列的值从其当前值更改时,自动更新时间戳列(如果有)将自动更新为当前时间戳如果所有其他列都设置为其当前值,则时间戳列不会更改。如果时间戳列显式分配了非NULL的值,则自动更新不适用


强调我的。

我的行中只有一个时间戳列。所以你说我应该将默认值改为null,然后在每次运行sql时显式地更新它,或者我可以将默认类型保留为当前时间戳?另一件事是,当我运行这段代码时,mysql\u查询中没有更新“update x SET update\u date=NOW()”?原因是什么?