mysql自动赋值

在mysql数据表设计时,为了记录数据首次插入及修改的时间,通常会设计有create_time和update_time2个字段。有2种方式可实现自动赋值:

第一种:通过mybatis-plus自动填充;

第二种:通过设计mysql表来实现。

本文主要介绍使用mysql方案

为create_time和update_time指定为datetime或timestamp类型,对于存量表,可通过下面的SQL进行设置:

sql 复制代码
ALTER TABLE sms_store_apply 
MODIFY COLUMN create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
MODIFY COLUMN update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

通过这样的设计可实现,新增是为create_time和update_time指定当前时间,当执行修改操作时,只修改update_time为当前时间,create_time的值不动。

如果是新增表,设计表时这样指定:

sql 复制代码
CREATE TABLE sms_store_appeal (
    -- 其他字段...
    create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    -- 其他字段...
);
相关推荐
yanwumuxi1 小时前
【数据库系列】opensearch数据备份和恢复
数据库
anxiao_m1 小时前
2026企业AI数字孪生选型攻略,不同场景对应不同解决方案
大数据·网络·数据库
SelectDB1 小时前
从 ClickHouse 迁移到 Doris:SQL 兼容、同步与验证清单(实战笔记)
大数据·数据库·数据分析
这个DBA有点耶1 小时前
非关系型数据库到底有几种?键值、文档、列族、图,一篇讲透
mysql·架构·nosql
SelectDB1 小时前
Doris 还是 ClickHouse?一张表说清 6 个关键差异(实战笔记)
大数据·数据库·数据分析
oradh2 小时前
Oracle Undo问题总结(两类Undo表空间不足和单个会话占用大量Undo的性能问题)
数据库·oracle
企业数字化笔记2 小时前
固定资产财务账与实物账怎么对账?折旧快照、差异检测与SQL核对
android·数据库·sql
DBA_G2 小时前
GBase 8a表空间多路径存储数据迁移链路适配解析
数据库·oracle
java1234_小锋2 小时前
Tornado 6.5,全面支持 Python 3.14
数据库·python·tornado
jyOverQ3 小时前
MySQL 事务到底是什么?ACID 四大特性与隔离级别怎么理解?
数据库·mysql