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(),
相关推荐
数据知道3 分钟前
PostgreSQL 性能优化:连接数过多的原因分析与连接池方案
数据库·postgresql·性能优化
怣503 分钟前
MySQL子查询实战指南:数据操作(增删改查)与通用表达式
数据库·chrome·mysql
范纹杉想快点毕业6 分钟前
从单片机基础到程序框架:构建嵌入式系统的完整路径
数据库·mongodb
数据知道8 分钟前
PostgreSQL性能优化:如何定期清理无用索引以释放磁盘空间(索引膨胀监控)
数据库·postgresql·性能优化
喵叔哟10 分钟前
67.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--新增功能--分摊功能总体设计与业务流程
数据库·微服务·架构
tryCbest10 分钟前
Oracle查看存储过程
数据库·oracle
咩咩不吃草16 分钟前
【MySQL】表和列、增删改查语句及数据类型约束详解
数据库·mysql·语法
不懒不懒17 分钟前
【MySQL 实战:从零搭建规范用户表(含完整 SQL 与避坑指南)】
数据库
ID_1800790547320 分钟前
Python结合淘宝关键词API进行商品价格监控与预警
服务器·数据库·python
数据知道34 分钟前
PostgreSQL 故障排查:万字详解如何找出数据库中的死锁
数据库·postgresql