MySQL自动设置create_time和update_time
Posted Questions张
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL自动设置create_time和update_time相关的知识,希望对你有一定的参考价值。
参考表结构
CREATE TABLE `t_baby` (
`baby_id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) NOT NULL,
`nickname` varchar(64) DEFAULT NULL,
`avatar` varchar(64) DEFAULT ‘‘,
`sex` int(2) unsigned NOT NULL DEFAULT ‘0‘ COMMENT ‘0:未知;\\n 1:男;\\n 2:女。‘,
`birthday` datetime NOT NULL,
`creater` varchar(16) DEFAULT ‘‘,
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
`is_delete` bigint(20) DEFAULT NULL COMMENT ‘0‘,
`updater` varchar(16) DEFAULT NULL,
PRIMARY KEY (`baby_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10000000 DEFAULT CHARSET=utf8mb4;
当我们创建业务表的时候 通常都需要设置create_time 和 update_time 但是通常需要在代码中设置好时间后再插入数据库
CURRENT_TIMESTAMP 字段设置后 当insert数据时 mysql会自动设置当前系统时间 赋值给该属性字段
ON UPDATE CURRENT_TIMESTAMP 字段设置后 当update数据时 并且 成功发生更改时 mysql会自动设置当前系统时间 赋值给该属性字段
create_time 设置 CURRENT_TIMESTAMP属性
update_time 设置 ON UPDATE CURRENT_TIMESTAMP属性
我们在代码中 就无需再手动给这两个参数赋值 节省了一定代码量
以上是关于MySQL自动设置create_time和update_time的主要内容,如果未能解决你的问题,请参考以下文章
MySQL自动设置create_time和update_time
Mysql 添加 create_time, update_time 创建时间 更新时间 自动更新