背景:由Mysql5.6导出的数据插入到Mysql8中报错:
[Err] 1067 - Invalid default value of 'time'
其中报错信息为时间字段‘0000-00-00’。
解决办法:
去掉Mysql8不能插入时间为0的限制:
- 查询Mysql8的限制:
> select @@sql_mode;
> 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_IN_DATE, NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION’
- 去掉NO_ZERO_IN_DATE, NO_ZERO_DATE:
> SET GLOBAL sql_mode = ’ ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION’;
网友评论