本篇文章小编给大家分享一下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 '创建时间' );