MySQL - 时间戳的最大值

问题描述 投票:0回答:1

我正在使用 MySQL 数据库来存储为模型提供的一系列输入。我有许多不同的日期,存储为

TIMESTAMP

但是,某些值可能是未来数百年的值。当我查看数据库时,它们存储为

'0000-00-00 00:00:00'
,而实际的 timestamp 应该类似于
'2850-12-01 00:00:00'

在 Google 上搜索时,我注意到最大值是 2038 年的某个时间。有没有人找到更长日期时间戳的解决方法?

mysql timestamp
1个回答
5
投票

您可以将它们转换为

DATETIME
,它将存储您想要的内容。比较:

MariaDB [test]> create table t (t timestamp, d datetime);
Query OK, 0 rows affected (0.59 sec)

MariaDB [test]> insert into t values ('2850-12-01 00:00:00','2850-12-01 00:00:00');
Query OK, 1 row affected, 1 warning (0.08 sec)

MariaDB [test]> select * from t;
+---------------------+---------------------+
| t                   | d                   |
+---------------------+---------------------+
| 0000-00-00 00:00:00 | 2850-12-01 00:00:00 |
+---------------------+---------------------+
1 row in set (0.00 sec)
© www.soinside.com 2019 - 2024. All rights reserved.