MySQL8 设置自动创建时间和自动更新时间

这篇具有很好参考价值的文章主要介绍了MySQL8 设置自动创建时间和自动更新时间。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

业务场景:

1、在数据库表中的数据,要求记录每一条新增数据的创建时间,时间格式要求明确至:年月日:时分秒。

2、在数据库表中的数据,要求记录每一条更新数据的更新时间,时间格式要求明确至:年月日:时分秒。

功能实现:

1、为每张业务表添加create_time 和update_time 字段,且将字段类型设置为:timestamp

2、为每张业务表的create_time 和update_time 字段,设置默认值:CURRENT_TIMESTAMP

DDL 脚本语法:

1、新增字段create_time语法

ALTER TABLE  表名
ADD COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;

实例:为User表 新增create_time设置默认时间 CURRENT_TIMESTAMP 

ALTER TABLE User
ADD COLUMN create_time datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;

2、修改字段create_time语法

ALTER TABLE 表名
MODIFY COLUMN  字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;

实例:修改User 表中的create_time设置默认时间 CURRENT_TIMESTAMP 

ALTER TABLE User
MODIFY COLUMN  create_time timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;

3、新增字段update_time 语法

ALTER TABLE 表名
ADD COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;

实例:为User表 新增update_time 设置默认时间 CURRENT_TIMESTAMP 

ALTER TABLE User
ADD COLUMN Update_time timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;

4、修改字段update_time 语法

ALTER TABLE 表名
MODIFY COLUMN 字段名 timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;

实例:修改User 表中的update_time设置默认时间 CURRENT_TIMESTAMP  文章来源地址https://www.toymoban.com/news/detail-404862.html

ALTER TABLE User
MODIFY COLUMN update_time timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ;

到了这里,关于MySQL8 设置自动创建时间和自动更新时间的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mysql及Navicat中如何设置字段自动填充当前时间以及修改时间。

    ​该文章讲解了创建时间及修改时间如何通过函数自动填充,并演示了以下几种方式实现列自动填充创建时间及修改时间: 创建表时设置字段为自动更新时间列。 添加新字段为自动更新时间列。 更新已有字段为自动更新时间列。 通过navicat设置字段为自动更新时间列。 CUR

    2024年02月02日
    浏览(66)
  • MySQL8.0中Online DDL也要在业务低峰期执行

    一、背景 MySQL 从 5.6 开始引入了 Online DDL , alter 操作不再阻塞 dml 。在 MySQL 8.0 中,针对 Online DDL 做了进一步优化, alter table 加列操作支持 INSTANT 算法,意思就是使用这个算法进行加列操作只需要修改表的元数据信息,操作瞬间就完成了。在 MySQL 8.0.30 以后, instant 算法支持

    2023年04月25日
    浏览(39)
  • Mysql和Oracle创建日期和修改日期设置为自动生成

    1.Mysql 自动获取创建时间:timestamp not null default CURRENT_TIMESTAMP 自动获取更新时间:timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP 1.1.建表语句 2. Oracle 2.1.建表语句 2.2.利用触发器设置更新时间 userinfo:是表名 modify_time:执行update需要自动更新的字段

    2024年02月09日
    浏览(51)
  • 记录CentOS7 Linux下安装MySQL8_适合正式环境_干货满满(超详细,默认开启了开机自启动,设置表名忽略大小写,提供详细配置,创建非root专属远程连接用户)

    安装前先清理mariadb和mysql相关文件:    通过命令: rpm -qa|grep mariadb 查询是否安装了mariadb    卸载: rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64(复制上面命令查到的完整名称)    通过命令: find / -name mysql 查询跟mysql相关的文件     删除文件命令:    rm -rf /etc/selinux/targeted/act

    2024年02月04日
    浏览(48)
  • 【业务功能篇46】项目中的Entity基类 固定的相关创建人,创建时间字段..

    在搭建的后端应用中,我们使用了 mybatis-plus 框架作为扩展,减少 sql 的书写,提升开发效率,其中有个功能很好用,就是自动填充。在项目中,我们的后台表一般会具有一些标准字段,作为强制建表规范,比如: create_by 创建者 creation_date 创建时间 last_updated_by 最后更新者

    2024年02月16日
    浏览(36)
  • SpringBoot 更新业务场景下,如何区分null是清空属性值 还是null为vo属性默认值?

    值为null 未传递此属性 所以此时如何区分null 时传递进来的的null,还是属性的默认值null? 引入过滤器,中间截获 requestBodyData 并保存到 HttpServletRequest ,业务层从 HttpServletRequest 获取到 requestBodyData 辅助判断此属性为 未传递 还是 值为null 自定义过滤器截获 requestBodyData 并保存到

    2024年01月18日
    浏览(35)
  • 互联网金融P2P主业务场景自动化测试

    互联网金融P2P行业,近三年来发展迅速,如火如荼。         据不完全统计,全国有3000+的企业。   “互联网+”企业,几乎每天都会碰到一些奇奇怪怪的bug,作为在互联网企业工作的测试人员,风险和压力都巨大。那么我们如何降低风险呢?         P2P主要的业务场景概括

    2024年02月02日
    浏览(49)
  • 自动安装解压版mysql8的脚本

    注意:自动安装zip压缩包,不是msi安装包

    2024年01月19日
    浏览(32)
  • MySQL8.0 创建用户、配置用户权限、添加外网访问

    添加用户、外网访问 在MySQL 8.0中,root用户的外网访问权限默认是被禁止的。要修改root用户的外网访问权限,您需要进行以下步骤: 连接到MySQL服务器。您可以使用MySQL命令行客户端或其他数据库管理工具。 使用以下命令以root身份登录MySQL: 然后输入您的root用户密码。 输入

    2024年02月12日
    浏览(45)
  • mysql(八)docker版Mysql8.x设置大小写忽略

    Mysql 5.7设置大小写忽略可以登录到Docker内部,修改/etc/my.cnf添加lower_case_table_names=1,并重启docker使之忽略大小写。但MySQL8.0后不允许这样,官方文档记录: lower_case_table_names can only be configured when initializing the server. Changing the lower_case_table_names setting after the server is initialized is pr

    2024年01月19日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包