一个带有多个TIMESTAMP列的Mysql表
我想要一个有两TIMESTAMP
列的表。一栏用于记录的创建时间,另一栏用于记录的修改时间。我希望这些值由数据库处理。我不想让我的应用程序层考虑一下。
我知道,如果您有一个TIMESTAMP
带有DEFAULT CURRENT_TIMESTAMP
或的列,ON UPDATE
CURRENT_TIMESTAMP那么您将无法拥有另一个TIMESTAMP
列。您可以使用,DATETIME
但没有办法在触发器之外默认它,据我所知。
我发现您可以具有多个TIMESTAMP
列,方法是将每个列不带DEFAULT
或保留,ON
UPDATE并NULL
在创建记录时插入,以使每个列具有当前时间戳。从这一点开始,第一列将自动更新。
这个效果非常好,但是给我一种有趣的感觉。这样可能是一个错误,并且可以随时对其进行修补。如果这是应该工作的方式,那就这样吧。我会很高兴地继续前进。谁能告诉我这是最好的方法还是应该使用触发器?
回答:
它记录在MySQL文档中:
另外,
,除非已使用NULL属性将其定义为允许NULL值。
http://dev.mysql.com/doc/refman/5.0/en/timestamp-
initialization.html
以上是 一个带有多个TIMESTAMP列的Mysql表 的全部内容, 来源链接: utcz.com/qa/398613.html