mysql数据库自动添加创建时间及更新时间代码示例

作者:袖梨 2022-06-29

本篇文章小编给大家分享一下mysql数据库自动添加创建时间及更新时间代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

1、描述

在mysql中,添加表中的列类型为时间类型(timestamp)时,可设置默认值

设置时间列的默认值为自动获取创建时间:

default CURRENT_TIMESTAMP

设置时间列的默认值为自动获取更新时间:

 default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP

再添加个值不可为null

#创建时间
not null default CURRENT_TIMESTAMP
# 更新时间
not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP

2 完整的操作 SQL

2.1 修改现有表中的时间列默认值为自动获取

修改表 t_user 中的 create_time 列 在插入新的数据时 如果值为空就设置为当前的系统时间

#修改表 t_user 中的 create_time 列 在插入新的数据时 如果值为空就设置为当前的系统时间
ALTER TABLE t_user MODIFY create_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间';

修改表 t_user 中的 update_time 列 在修改的数据时 如果值为空就设置为当前的系统时间

#修改表 t_user 中的 update_time 列 在修改的数据时 如果值为空就设置为当前的系统时间
ALTER TABLE t_user MODIFY update_time timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '更新时间';

2.2 现有表中添加时间列设置默认值

新增表 t_user 中的 create_time 列

#新增表 t_user 中的 create_time 列 
 ALTER TABLE t_user ADD create_time timestamp not null default CURRENT_TIMESTAMP COMMENT '创建时间';

新增表 t_user 中的 update_time 列

 #新增表 t_user 中的 update_time 列 
 ALTER TABLE t_user ADD update_time timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '更新时间';

2.3 创建表时时间列设置默认值

create table t_user(
  id integer not null auto_increment primary key,
  user_name varchar(20) not null ,
  update_time timestamp  default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '更新时间',
    create_time timestamp  default CURRENT_TIMESTAMP COMMENT '创建时间'
);

相关文章

精彩推荐