MySQL8 设置自动创建时间和自动更新时间
Posted 在奋斗的大道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL8 设置自动创建时间和自动更新时间相关的知识,希望对你有一定的参考价值。
业务场景:
1、在数据库表中的数据,要求记录每一条新增数据的创建时间,时间格式要求明确至:年月日:时分秒。
2、在数据库表中的数据,要求记录每一条更新数据的更新时间,时间格式要求明确至:年月日:时分秒。
功能实现:
1、为每张业务表添加create_time 和update_time 字段,且将字段类型设置为:timestamp
2、为每张业务表的create_time 和update_time 字段,设置默认值:CURRENT_TIMESTAMP
DDL 脚本语法:
1、新增字段create_time语法
ALTER TABLE 表名
ADD COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;
实例:为User表 新增create_time设置默认时间 CURRENT_TIMESTAMP
ALTER TABLE User
ADD COLUMN create_time datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;
2、修改字段create_time语法
ALTER TABLE 表名
MODIFY COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;
实例:修改User 表中的create_time设置默认时间 CURRENT_TIMESTAMP
ALTER TABLE User
MODIFY COLUMN create_time timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;
3、新增字段update_time 语法
ALTER TABLE 表名
ADD COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;
实例:为User表 新增update_time 设置默认时间 CURRENT_TIMESTAMP
ALTER TABLE User
ADD COLUMN Update_time timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;
4、修改字段update_time 语法
ALTER TABLE 表名
MODIFY COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;
实例:修改User 表中的update_time设置默认时间 CURRENT_TIMESTAMP
ALTER TABLE User
MODIFY COLUMN update_time timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;
以上是关于MySQL8 设置自动创建时间和自动更新时间的主要内容,如果未能解决你的问题,请参考以下文章
我爱java系列之---mysql自动更新创建时间和更新时间