MySQL UPDATE TIMESTAMP on row UPDATE,即使所有其他行数据保持不变?

2022-01-17 00:00:00 sql-update mysql

我有一张带有时间戳的表格.

I have a table with a timestamp.

时间戳设置为ON UPDATE CURRENT_TIMESTAMP."

当我对具有与该行中已有数据相同的数据的行运行更新时,我仍然希望 TIMESTAMP 更新.它不是.为什么不呢?如果数据不同,更新就好了.

When I run an update on a row with data that is the same as the data already in that row, I still want the TIMESTAMP to update. It does not. Why does it not? If the data is different it updates just fine.

我意识到我可以使用 TIMESTAMP = now() 强制更新,但我试图了解 MySQL 正在做什么.

I realize I can force an update with TIMESTAMP = now(), but I am trying to understand what MySQL is doing.

推荐答案

你说过ON UPDATE.

如果所有行的值都相同,则不会发生更新.

There is no update happening if all the row's values are the same.

相关文章