Data truncation: Incorrect datetime value: ‘0000-00-00 00:00:00’ for column.

简而言之,就是字段值不能是0000-00-00 00:00:00:00

问题缘由

sql_mode变量中包含NO_ZERO_DATE或者NO_ZERO_IN_DATE

查看当前sql_mode

# 查看当前sql_mode
select @@sql_mode;
# 查看全局sql_mode
select @@global.sql_mode;

修改当前sql_mode

# 修改全局
set @@global.sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
# 修改当前
set @@sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

参考文章