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