我有一个昨天崩溃的存储过程。事情是这样开始的:
DECLARE v_today TIMESTAMP;
SET v_today = (DATE(NOW()) + INTERVAL 0 SECOND);
我已修复此问题,将 v_today
的类型更改为 DATETIME
。但我想了解为什么它只在昨天(巴西开始夏令时)才生成错误。
错误是:
Mysql2::Error: Incorrect datetime value: '2017-10-15 00:00:00' for column 'v_today' at row 1:
谢谢。
最佳答案
我敢打赌这是 MySQL 中的一个错误。这是巴西的时间转换规则。 timeanddate.com/time/change/brazil/brasilia TIMESTAMP 值 2017-10-15 00:00:00
似乎不存在,需要向前推进一个小时2017-10-15 01:00:00
。但 MySQL 只是出错。
关于MySQL TIMESTAMP 停止处理夏令时转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46770367/