当前位置 : 主页 > 编程语言 > java >

mysql多个TimeStamp

来源:互联网 收集:自由互联 发布时间:2021-06-28
mysql多个TimeStamp timestamp设置默认值是Default CURRENT_TIMESTAMP;timestamp设置随着表变化而自动更新是ON UPDATE CURRENT_TIMESTAMP;接下来为您详细介绍timestamp设置默认值是Default CURRENT_TIMESTAMP timestamp设
mysql多个TimeStamp
timestamp设置默认值是Default CURRENT_TIMESTAMP;timestamp设置随着表变化而自动更新是ON UPDATE CURRENT_TIMESTAMP;接下来为您详细介绍
timestamp设置默认值是Default CURRENT_TIMESTAMP 
timestamp设置随着表变化而自动更新是ON UPDATE CURRENT_TIMESTAMP 

但是由于 
一个表中至多只能有一个字段设置CURRENT_TIMESTAMP 
两行设置DEFAULT CURRENT_TIMESTAMP是不行的。 

还有一点要注意 
复制代码 代码如下:

CREATE TABLE `device` ( 
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
`toid` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'toid', 
`createtime` TIMESTAMP NOT NULL COMMENT '创建时间', 
`updatetime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后更新时间', 
PRIMARY KEY (`id`), 
UNIQUE INDEX `toid` (`toid`) 
) 
COMMENT='设备表' 
COLLATE='utf8_general_ci' 
ENGINE=InnoDB; 

像这个设置也是不行的。 
原因是mysql会默认为表中的第一个timestamp字段(且设置了NOT NULL)隐式设置DEFAULAT CURRENT_TIMESTAMP。所以说上例那样的设置实际上等同于设置了两个CURRENT_TIMESTAMP。
网友评论