Mysql中的CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP

文章来源:https://blog.csdn.net/stpeace/article/details/78145218

 在Mysql中, 如果数据类型为TIMESTAMP或DATETIME的列设置了CURRENT_TIMESTAMP, 那么在insert一条新记录的时候, 时间字段会自动获取到当前时间, 如果设置了ON UPDATE CURRENT_TIMESTAMP, 则时间字段随着update命令的更新而实时变化。 如果两个属性都设置了, 那么时间字段默认为当前时间, 且随着记录的更新而自动变化。在Mysql5.7版本中,如果时间字段没有设置以上两个属性, 则默认拥有以上两个属性。

create table t_timestamp(
id int(11) NOT NULL PRIMARY KEY,
username varchar(20) NOT NULL,
registTime timestamp NOT NULL
);

create table t_timestamp(
id int(11) NOT NULL PRIMARY KEY,
username varchar(20) NOT NULL,
registTime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

是等价的。

实际操作如下图所示:

Mysql中的CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP_第1张图片

Mysql中的CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP_第2张图片

你可能感兴趣的:(Mysql学习笔记)