MySQL [Err] 1292 – Incorrect datetime value: .date(Y-m-d h:i:s)…解决方法

最近处理一些历史数据迁移,数据包括一些日期,由于历史遗留问题很多日期格式不规范,又没法全部修正,在执行SQL语句时就遇到了这个错误。

[Err] 1292 – Incorrect datetime value: .date(Y-m-d h:i:s)…

究其原因是由于 MySQL 的严格模式造成的,需要修改my.ini配置文件。

解决方法:

修改my.ini配置文件,建议修改前新备份。

my.ini中查找sql-mode

一般默认为:sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
将STRICT_TRANS_TABLES
删掉保存重启mysql即可;

如果版本高的话默认可能是:
sql_mode=”STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER
将NO_ZERO_DATE,NO_ZERO_IN_DATE
删掉保存重启mysql即可;

未经允许不得转载:王超博客 » MySQL [Err] 1292 – Incorrect datetime value: .date(Y-m-d h:i:s)…解决方法

赞 (0)