Je to skutečně kvůli režimu SQL NO_ZERO_DATE
. Měli jste to vidět, když Anand Rockzz odkazoval na příručku, ale tento odkaz je pouze polovinou vysvětlení. Od MySQL 5.7.4 je toto nastavení zastaralé. Ve vašem prvním příkladu nastavujete datum; ve druhém NO_ZERO_DATE
způsobí návrat NULL, protože neuvádíte datum. Počínaje 5.7.8, NO_ZERO_DATE
a NO_ZERO_IN_DATE
byly zahrnuty s výchozí hodnotou sql_mode. Podle příručky , vypadá to, jako by bylo ukončení podpory a odstranění částečně vráceno zpět (počínaje verzí 5.7.8), takže to možná budete moci explicitně nastavit ve svém my.cnf
(nebo na relaci).
Měli byste si také přečíst příručku týkající se NO_ZERO_DATE směrnice.