我的mysql表中有两列:created_on和modified_on.我已将created_on列的默认值设置为CURRENT_TIMESTAMP.因此,在表中的每个插入操作中,created_on列正确地将值设置为当前时间戳.但是我希望当我更新同一行时,’modified_...
我的mysql表中有两列:created_on和modified_on.我已将created_on列的默认值设置为CURRENT_TIMESTAMP.因此,在表中的每个插入操作中,created_on列正确地将值设置为当前时间戳.但是我希望当我更新同一行时,’modified_on’列将值更新为更新时的时间戳.让我知道如果我使用任何函数/触发器来执行此操作,或者是否有任何内置的mysql功能
解决方法:
尝试使用ON UPDATE关键字更改您的表格,例如:
ALTER TABLE `tableName`
CHANGE `modified_on` `modified_on` TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP;
或者您可以在插入时添加默认值,如:
ALTER TABLE `tableName`
CHANGE `modified_on` `modified_on` TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP
NOT NULL DEFAULT CURRENT_TIMESTAMP ;
您还可以在创建表时将ON UPDATE定义为时间戳数据类型.
沃梦达教程
本文标题为:java – 如何让mysql在每次修改行操作时自动将列更新为当前时间戳?
基础教程推荐
猜你喜欢
- minio安装部署及使用的详细过程 2023-05-24
- java – Hibernate – 种子数据库,不使用import.sql 2023-11-04
- Spring Boot超详细分析启动流程 2023-02-28
- 一文详解Spring如何控制Bean注入的顺序 2023-01-13
- jsp导出excel并支持分sheet导出的方法 2023-08-03
- SpringBoot2.7 WebSecurityConfigurerAdapter类过期配置 2023-01-13
- Java 3年面试经验告诉你Mybatis是如何进行分页的 2023-05-24
- 一文带你搞懂Java单例模式 2023-07-01
- Java Swing实现QQ登录页面 2022-11-02
- Java中Thread和Runnable创建线程的方式对比 2023-02-11