java – 如何让mysql在每次修改行操作时自动将列更新为当前时间戳?

我的mysql表中有两列:created_on和modified_on.我已将created_on列的默认值设置为CURRENT_TIMESTAMP.因此,在表中的每个插入操作中,created_on列正确地将值设置为当前时间戳.但是我希望当我更新同一行时,’modified_...

我的mysql表中有两列:created_on和modified_on.我已将created_on列的默认值设置为CURRENT_TIMESTAMP.因此,在表中的每个插入操作中,created_on列正确地将值设置为当前时间戳.但是我希望当我更新同一行时,’modified_on’列将值更新为更新时的时间戳.让我知道如果我使用任何函数/触发器来执行此操作,或者是否有任何内置的mysql功能

解决方法:

尝试使用ON UPDATE关键字更改您的表格,例如:

ALTER TABLE `tableName` 
CHANGE `modified_on` `modified_on` TIMESTAMP 
ON UPDATE CURRENT_TIMESTAMP;

或者您可以在插入时添加默认值,如:

ALTER TABLE `tableName` 
CHANGE `modified_on` `modified_on` TIMESTAMP 
ON UPDATE CURRENT_TIMESTAMP
NOT NULL DEFAULT CURRENT_TIMESTAMP ;

您还可以在创建表时将ON UPDATE定义为时间戳数据类型.

本文标题为:java – 如何让mysql在每次修改行操作时自动将列更新为当前时间戳?

基础教程推荐