4

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

4

2 回答 2

4

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在创建表时定义时间戳数据类型。

于 2012-10-23T06:30:32.407 回答
1

为此编写一个触发器

于 2012-10-23T06:25:15.283 回答