MYSQL导入sql文件出错:ERROR 1067 (42000): Invalid default value for 'created_at'

MYSQL导入sql文件出错:ERROR 1067 (42000): Invalid default value for 'created_at'

引起这个错误的原因多半是因为字段中带有DEFAULT CURRENT_TIMESTAMP,具体错误内容为:

[Err] 1067 - Invalid default value for 'created'
[Err] INSERT INTO `fieldgroups_fields` (`fieldgroups_id`, `fields_id`, `sort`, `data`) VALUES('116', '163', '17', NULL);

原因分析

引起该错误的原因是由于sql_modes 的参数,使用该命令可查看具体详细

show variables like 'sql_mode' ; 

解决方法

移除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';

Post Comment