我有一个 MySQL 表,其中有一列名为“created_at”,它是一个 TIMESTAMP 字段。每当我尝试插入大于 2037 的日期时间时,我都会收到以下错误:
#1292 - Incorrect datetime value: '2039-06-18 16:54:35' for column 'created_at' at row 1
我知道这是 32 位 MySQL 的问题,但我运行的是 64 位的,难道这不是解决方案吗?
这是我的 MySQL 版本的命令输出:
mysqld Ver 5.7.26-0ubuntu0.18.04.1 for Linux on x86_64 ((Ubuntu))
阅读 this建议使用 TIMESTAMP 字段是问题所在,使用 DATETIME 字段将解决问题,对吗?
最佳答案
出于兼容性原因,TIMESTAMP 仍然是 UNIX TIMESTAMP(32 位)......
您阅读的建议是正确的,请改用 DATETIME。
关于64 位 MySQL 的 PHP 年份 2038 问题无法通过 PHPMyAdmin 插入日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56714897/