我无法在我的数据库中插入时间戳值'2015-01-07 00:00:00'
。
此问题适用于2015-01-07 00:00:00
和2015-01-07 01:00:00
这仅适用于2015年1月7日。
SHOW VARIABLES LIKE "%version%";
protocol_version 10
version 5.1.50-community
version_comment MySQL Community Server (GPL)
version_compile_machine ia32
version_compile_os Win32
==
CREATE TABLE `eventtest3` (
`event_dt` TIMESTAMP
) ENGINE=INNODB DEFAULT CHARSET=utf8
1 queries executed, 1 success, 0 errors, 0 warnings
0 row(s) affected
==
我的插入查询是:
1 queries executed, 0 success, 1 errors, 0 warnings
Query: INSERT INTO eventtest3 (event_dt) VALUES('2015-01-07 00:00:00')
Error Code: 1292
Incorrect datetime value: '2015-01-07 00:00:00' for column 'event_dt' at row 1
==
工作查询:
Query: INSERT INTO eventtest3 (event_dt) VALUES('2017-01-07 00:00:00')
1 queries executed, 1 success, 0 errors, 0 warnings
1 row(s) affected
Query: INSERT INTO eventtest3 (event_dt) VALUES('2014-01-07 00:00:00')
1 queries executed, 1 success, 0 errors, 0 warnings
1 row(s) affected
Query: INSERT INTO eventtest3 (event_dt) VALUES('2016-01-07 00:00:00')
1 queries executed, 1 success, 0 errors, 0 warnings
1 row(s) affected
1 queries executed, 1 success, 0 errors, 0 warnings
Query: INSERT INTO eventtest3 (event_dt) VALUES('2015-01-31 05:07:09')
1 row(s) affected
在这个日期没有时间转移,所以我不认为这个问题是因为时区设置。
答案 0 :(得分:0)
解决方法是检查mysql.time_zone *表是否为空,从http://dev.mysql.com/downloads/timezones.html下载时区信息,只需用停止的mysql服务替换表。
我真的不知道这对2015年1月7日有什么帮助,但确实如此。