mysql timestamp有关于2038年的限制

时间:2024-03-19 11:42:43

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版本的老老实实采用第一种方案。