MySQL中create_time和update_time实现自动更新时间

 更新时间:2023年05月28日 14:39:03   作者:我梦Leo  
mysql建表的时候有两个列,一个是createtime、另一个是updatetime,这两个都是mysql自动填充时间的方式,本文就详细的介绍这两种方式的实现,感兴趣的可以了解一下

背景

根据《阿里巴巴Java开发手册》第五章MySQL数据库:第一节 建表规约,第9条: 【强制】表必备三字段:id,create_time,update_time。 说明:其中 id 必为主键,类型为 bigint unsigned、单表时自增、步长为 1。create_time,update_time 的类型均为datetime 类型,前者现在时表示主动式创建,后者过去分词表示被动式更新。

实现方式

  • 按照《阿里巴巴Java开发手册》规范要求,create_time 和 update_time 数据类型先设定为 datetime 。
  • 默认值设置为 CURRENT_TIMESTAMP。
  • 更新时间( update_time )还要再设置一个ON UPDATE CURRENT_TIMESTAMP。

MySQL 实现

  • 直接查看第四行(create_time)和第五行(update_time)的SQL语句即可。
  • update_time 在create_time的基础上,还需要设置 ON UPDATE CURRENT_TIMESTAMP。
create table datetime (
	id bigint unsigned primary key auto_increment comment "id",
    name varchar not null comment "名称",
    create_time datetime not null default CURRENT_TIMESTAMP comment "创建时间",
    update_time datetime not null default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment "更新时间",
    ) engine = Innodb default charset = utf8mb4 comment = "演示表";

Navicat 实现

  • create_time :不勾选“根据当前时间戳更新”。
  • update_time:勾选“根据当前时间戳更新”。

DataGrip 实现

  • create_time :ON UPDATE 不设置 CURRENT_TIMESTAMP。
  • update_time:ON UPDATE 设置 CURRENT_TIMESTAMP。

到此这篇关于MySQL中create_time和update_time实现自动更新时间的文章就介绍到这了,更多相关MySQL create_time和update_time自动更新时间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL主从同步+binlog详解

    MySQL主从同步+binlog详解

    这篇文章主要介绍了MySQL主从同步+binlog的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-07-07
  • MySQL简化输入小技巧

    MySQL简化输入小技巧

    在这里我将介绍两个使用MySQL数据库时候简化输入的小技巧。
    2011-09-09
  • MySQL视图和索引专篇精讲

    MySQL视图和索引专篇精讲

    这篇文章主要介绍了MySQL的视图和索引用法与区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-03-03
  • MySQL中sleep函数的特殊现象示例详解

    MySQL中sleep函数的特殊现象示例详解

    这篇文章主要给大家介绍了关于MySQL中sleep函数特殊现象的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-10-10
  • 使用Mysql5.x以上版本出现报错#1929 Incorrect datetime value: '''''''' for column ''''createtime''''的快速解决方法

    使用Mysql5.x以上版本出现报错#1929 Incorrect datetime value: '''''''' f

    我的MySQL安装后,保存删除表数据总是出现#1929 Incorrect datetime value: '' for column 'createtime' 的报错提醒,导致不能删除表里数据。下面小编给大家分析原因及解决办法,需要的朋友可以参考下
    2017-01-01
  • MySql状态查看方法 MySql如何查看连接数和状态?

    MySql状态查看方法 MySql如何查看连接数和状态?

    如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接
    2012-11-11
  • MySql带OR关键字的多条件查询语句

    MySql带OR关键字的多条件查询语句

    MySQL带OR关键字的多条件查询,与AND关键字不同,OR关键字,只要记录满足任意一个条件,就会被查询出来。即AND的优先级高于OR
    2017-07-07
  • MySQL索引下推index condition pushdown

    MySQL索引下推index condition pushdown

    索引下推是MySQL 5.6版本引入的一种数据库查询优化技术,本文主要介绍了MySQL索引下推index condition pushdown,具有一定的参考价值,感兴趣的可以了解一下
    2024-08-08
  • MySQL查询树形结构数据的两种方法

    MySQL查询树形结构数据的两种方法

    本文主要介绍了MySQL查询树形结构数据的两种方法,可以使用递归查询或者闭包表来实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • SQL和NoSQL之间的区别总结

    SQL和NoSQL之间的区别总结

    在本篇内容里我们给大家精选了关于SQL和NoSQL之间的区别的总结内容,对此有需要的朋友们跟着学习下。
    2019-02-02

最新评论