mysql timestamp有关于2038年的限制

1、改datetime当然是一了百了,但是如果需要设置default,则需要mysql版本在5.6及以上;

alter table payment modify create_time datetime default CURRENT_TIMESTAMP null comment '创建时间';

alter table payment modify update_time datetime null default current_timestamp on update CURRENT_TIMESTAMP comment '更新时间';

2、不改变数据类型的方案。网上一堆说原理的,有屁用,还有一些说设置sql_mode之类的,去设置了屁用没有。就像java代码里面不写import的哪个jar包,.net不说引用哪个dll, 数据库涉及版本的不说版本号的都是耍流氓。8.0.28以后,且跑在64系统上的才能存储2038后的数据;

因为咱还没有8.0.28的版本,所以后面的情况还不知道,以后有了验证了再来补充。

没有到8.2.28版本的老老实实采用第一种方案。

相关推荐
麦聪聊数据1 小时前
IT 的“控”与业务的“放”:构建基于 Web 原生架构的安全数据共享平台
数据库·sql·安全
rchmin1 小时前
MySQL分库分表适用场景与依据
数据库·mysql
MaisieKim_1 小时前
2025年企业文档管理系统全面评测报告
运维·数据库
f***6511 小时前
sql中COALESCE函数详解
数据库·sql
b***59431 小时前
LangChain-08 Query SQL DB 通过GPT自动查询SQL
数据库·sql·langchain
u***32432 小时前
【MySQL】数据库和表的操作
数据库·mysql·oracle
好奇的菜鸟2 小时前
MySQL 8 开启远程登录
数据库·mysql·adb
是2的10次方啊2 小时前
MySQL索引设计原则:明明建了索引为什么还是慢?7条实战原则帮你避坑
mysql
('-')2 小时前
《从根上理解MySQL是怎样运行的》第十二章学习笔记
笔记·学习·mysql
Boop_wu3 小时前
[Java EE] 多线程编程进阶
java·数据库·java-ee