【发布时间】:2019-09-25 00:56:51
【问题描述】:
我无法在我的表格中插入这个日期:2020-03-21!
我的意思是我可以设置 20 和 22 就好了,但是当我设置 21 时它会失败并出现错误:
日期时间值不正确:'2020-03-21 00:00:00'
使用 PDO 我得到:
PDOException::("SQLSTATE[22007]: 无效的日期时间格式:1292 不正确的日期时间值:'2020-03-21 00:00:00' 第 1 行的列 'when'")
我真的很困惑,所以非常感谢任何帮助!
服务器版本:5.7.26 - MySQL 社区服务器 (GPL)
协议版本:10
表:
CREATE TABLE `test` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`when` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4;
查询:
这很好用:
INSERT INTO `test` (`when`) VALUES ('2020-03-20 00:00:00');
这会返回错误:
INSERT INTO `test` (`when`) VALUES ('2020-03-21 00:00:00');
不正确的日期时间值:“2020-03-21 00:00:00”对于第 1 行的列“时间”
使用 phpMyAdmin 时出现同样的错误
【问题讨论】:
-
显示您正在运行的确切查询。还有一个表模式。
-
@zerkms 不知道为什么我被否决了,它与表和查询无关......无论如何添加了一个简单的示例表。
-
您的服务器时区是什么?你很可能有某种夏令时开始,也许这个特定的时间在你的时区根本不存在
-
@MadhurBhaiya 你是 100% 正确的!感谢您帮助我理解这一点。
-
欢迎。您可以用您的时区作为答案.. 将来会帮助其他人
标签: mysql