Primeira opção:
Este aviso provavelmente pode ser devido ao
SQL_MODE
. De acordo com a documentação do mysql "Se o modo SQL NO_ZERO_DATE ou NO_ZERO_IN_DATE estiver ativado, datas zero ou parte das datas não serão permitidas.". Portanto, esta pode ser a causa do seu
INSERT
com '0000-00-00 00:00:00' falha. Você pode verificar seu modo sql executando isto:
SELECT @@sql_mode;
e se algum dos
NO_ZERO_DATE
ou NO_ZERO_IN_DATE
estão definidos, então você pode apenas:SET sql_mode = '';
Segunda opção
A outra opção é que está falhando por causa do
STRICT_TRANS_TABLES
mode.Como a documentação do mysql diz:O mesmo é válido para datetime.
Então você tem que desativar o MODO STRICT OU se desativá-lo não for uma opção - modifique a consulta para que ela não retorne um resultado de data/data e hora inválidos