我想定义一个表,它将有2个时间戳字段,类似这样:
CREATE TABLE `msgs` (
`id` INT PRIMARY KEY AUTO_INCREMENT,
`msg` VARCHAR(256),
`ts_create` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
`ts_update` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)
如何避免出现错误:
ERROR 1293 (HY000): Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
要点是将ts_create
和ts_update
的所需行为保留在表模式中。
发布于 2016-02-16 15:59:45
我猜这是一个老帖子,但实际上我猜mysql在它的最新版本中支持2时间戳mysql 5.6.25,这就是我现在使用的。
发布于 2015-03-05 18:52:25
我认为使用下面的技巧是可能的。
`ts_create` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`ts_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
发布于 2015-04-28 23:51:29
您使用的是较旧的MySql版本。将您的myqsl更新为5.6.5+,它将会正常工作。
https://stackoverflow.com/questions/4897002
复制相似问题