Mysql时间字段默认值及update操作数据时自动更新时间字段

MySQL的建表语句:

DROP TABLE if EXISTS `t_order_test`;
CREATE TABLE `t_order_test`(
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '订单主键',
order_no VARCHAR(40) NOT NULL DEFAULT '' COMMENT '订单编号',
create_by VARCHAR(32) NOT NULL DEFAULT '' COMMENT '订单创建人',
create_date datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '订单创建时间',
update_by VARCHAR(32) NOT NULL DEFAULT '' COMMENT '订单更新人',
update_date datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '订单更新时间',
INDEX `index_order_no` (order_no) 
)ENGINE = INNODB CHARSET = 'utf8mb4' COMMENT '订单测试表';

insert插入一条数据:

INSERT INTO t_order_test (order_no, create_by, update_by) VALUES('2020041517290001','1', '1');

执行结果:

 update更新数据

UPDATE t_order_test SET order_no = '12345678' WHERE id = 1;

执行结果,update_date时间自动更新。

原文地址:https://www.cnblogs.com/8593l/p/12706888.html