MySQL有多个时间戳

时间:2012-01-23 18:23:11

标签: mysql timestamp

好的,老黑客不再工作了。目前正在使用MySQL 5.5.11

在我的表中,我的下面的顺序相同。

created TIMESTAMP NOT NULL DEFAULT 0000-00-00 00:00:00
updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

在INSERT上,一切正常,并在创建和更新

上插入NOW()

现在使用MySQL 5.5.11,当我更新时,更新工作正常,但我松散创建(恢复到0000-00-00 00:00:00)

如果MySQL缺少多个TIMESTAMP支持,我怎样才能克服这个限制?

2 个答案:

答案 0 :(得分:3)

是的,它适用于早期版本,但不适用于较新版本。 我相信你可以解决这个问题如下:

`created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,

然后在[更新]列上创建一个触发器BEFORE。

SET new.updated = now();

反之亦然。

答案 1 :(得分:0)

据我所知,TIMESTAMP列会自动更新每个UPDATE操作到特定行。看起来您需要将列created设为DATETIME而不是时间戳。