Första alternativet:
Den här varningen kan förmodligen bero på SQL_MODE
.
Enligt mysql-dokumentationen "Om SQL-läget NO_ZERO_DATE eller NO_ZERO_IN_DATE är aktiverat, är noll datum eller delar av datum inte tillåtna.". Så detta kan vara orsaken till din INSERT
med '0000-00-00 00:00:00' misslyckas.
Du kan kontrollera ditt sql-läge genom att utföra detta:
SELECT @@sql_mode;
och om någon av NO_ZERO_DATE
eller NO_ZERO_IN_DATE
är inställda kan du bara:
SET sql_mode = '';
Andra alternativet
Det andra alternativet är att det misslyckas på grund av STRICT_TRANS_TABLES
mode.Som mysql-dokumentationen säger:
Detsamma gäller för datetime.
Så du måste antingen inaktivera STRICT MODE ELLER om det inte är ett alternativ att inaktivera det - ändra frågan så att den inte returnerar ogiltigt datum/datum/tid-resultat