mysql更新记录时设置自动更新时间戳

本文介绍如何在MySQL表中设置update_time字段自动更新为当前时间的方法。通过使用DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP属性,可以实现在插入和更新记录时自动更新时间戳。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

假设表有3个字段:id、name、update_time,希望在新增记录时能自动设置update_time字段为当前时间
设置DEFAULT CURRENT_TIMESTAMP即可

CREATE TABLE `test` (
`id` int NOT NULL,
`name` varchar(255),
`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) COMMENT='';

如果使用Navicat建表就是在图红框中选择默认值为CURRENT_TIMESTAMP


如果希望在更新记录时还能自动更新update_time字段为当前时间
设置ON UPDATE CURRENT_TIMESTAMP

CREATE TABLE `test` (
`id` int NOT NULL,
`name` varchar(255),
`update_time` timestamp NOT NULL ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) COMMENT='';

如果使用Navicat建表就是在图绿框中勾选上根据当前时间戳更新

这样设置之后,即使直接通过Navicat工具修改了name字段,那么update_time也会自动更新,除非手动设置了update_time字段



Sequel Pro见下图:


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值