Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Nieprawidłowa wartość daty i godziny Numer błędu bazy danych:1292

Po aktualizacji do MySQL 5.7 odkryłem, że ten błąd zaczął pojawiać się w losowych sytuacjach, nawet jeśli nie podałem daty w zapytaniu.

Wygląda na to, że poprzedni obsługiwane wersje MySQL, takie jak 0000-00-00 00:00:00 (domyślnie) jednak 5.7.4 wprowadził pewne zmiany w NO_ZERO_DATE ustawienie. Jeśli podczas korzystania z nowszej wersji MySQL nadal masz stare dane, mogą pojawić się przypadkowe błędy.

Musiałem wykonać takie zapytanie, aby zresetować wszystkie daty zerowe do innej daty.

# If the columns supports NULL, use that
UPDATE table SET date_column = NULL WHERE date_column < '1000-01-01';

# Otherwise supply another default date
UPDATE table SET date_column = '1970-01-01' WHERE date_column < '1000-01-01';

Alternatywnie możesz dostosować NO_ZERO_DATE ustawienie, ale zwróć uwagę, co mówią o nim dokumenty:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uszkodzone tabele MySQL InnoDB - jak to naprawić?

  2. Zapytanie SUMA dla dwóch pól w dwóch różnych tabelach

  3. Czy instrukcja merge jest dostępna w MySQL?

  4. Relacja jeden-do-wielu w MySQL - jak zbudować model?

  5. Usuń MySQL z Grupuj według