mysql低版本中update_time不自动更新问题

在mysql低版本时,update_time只有插入时才会自动插入当前时间,更新不会改变。

  1. MySQL 5.7 及以上版本对于TIMESTAMP类型字段有自动更新功能相关特性
  2. 在 MySQL 5.7以上版本 中,如果将一个TIMESTAMP类型的列设置为ON UPDATE CURRENT_TIMESTAMP属性,那么在该行数据被更新时,该列会自动更新为当前时间。例如,假设有一个表test_table,结构如下:
sql 复制代码
CREATE TABLE test_table (
    id INT PRIMARY KEY AUTO_INCREMENT,
    data VARCHAR(255),
    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
  • 当执行更新语句,如UPDATE test_table SET data = 'new data' WHERE id = 1;时,update_time列的值会自动更新为更新操作执行时的时间。

如果想要用低版本来实现update_time自动更新,两种常用方法。

  1. 一种是作为参数传入,和其他字段一样传入更新。

  2. 另一种就是利用数据库时间。

sql 复制代码
 update_time = NOW(),
相关推荐
雾喔几秒前
redis简单命令
数据库·redis·缓存
IT邦德1 分钟前
Oracle 26ai 图数据库
数据库·oracle
代码探秘者2 分钟前
【大模型应用】一篇弄懂Skill
数据结构·数据库·python·算法·spring
014-code3 分钟前
如何使用 Redis实现一个简易消息队列?
数据库·redis·缓存·消息队列
talen_hx2966 分钟前
screw-core生成数据库表结构文档简单例子
数据库·笔记·学习
Leo.yuan6 分钟前
什么是主数据管理?主数据管理怎么做?
大数据·数据库
gaozhiyong081312 分钟前
深度架构拆解:Gemini 3.1 Pro的核心技术突破与国内镜像站实测指南
java·开发语言·jvm·mysql
运维行者_16 分钟前
Applications Manager 中的 Azure 监控
运维·服务器·网络·数据库·后端·python·flask
lierenvip17 分钟前
mysql的主从配置
android·mysql·adb
野生技术架构师18 分钟前
制造业数据库选型实战:为什么我们从 MySQL 迁移到 TiDB
数据库·mysql·tidb