Wyłącz NO_ZERO_DATE
Tryb SQL:
set @old_sql_mode = @@sql_mode;
set sql_mode = '';
Uruchom swoje oświadczenie:
UPDATE Estimates
SET CreatedDate = NULLIF(str_to_date(CreatedDate, '%c/%e/%y'), FROM_DAYS(0))
Następnie włącz oryginalne tryby SQL:
set sql_mode = @old_sql_mode;
Wyłączanie NO_ZERO_DATE
tryb sprawi, że STR_TO_DATE
zwróć datę zerową 0000-00-00
dla nieprawidłowych ciągów daty, ta sama wartość jest zwracana przez FROM_DAYS(0)
. Więc NULLIF
przekonwertuje daty zerowe na NULL
.
Ta odpowiedź był pomocny.