Heim >Datenbank >MySQL-Tutorial >Wie behebt man den MySQL-Fehler 1292: „Falscher Datum/Uhrzeit-Wert'?

Wie behebt man den MySQL-Fehler 1292: „Falscher Datum/Uhrzeit-Wert'?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-02 09:07:13673Durchsuche

How to Fix MySQL Error 1292:

Falscher Datetime-Wert: MySQL-Fehler 1292 wird behoben

Beim Konvertieren einer vorhandenen Datenbank mit Datetime-Werten, die als „0000-00-00 00“ gespeichert sind: 00:00‘ können Benutzer auf den MySQL-Fehler 1292 stoßen: „Falscher Datum/Uhrzeit-Wert.“ Dieser Fehler tritt aufgrund von Versionskonflikten zwischen der ursprünglichen MySQL-Datenbank (z. B. 5.1) und neueren Versionen (z. B. 5.7) auf, die Datums-/Uhrzeitwerte unterschiedlich verarbeiten.

Um dieses Problem zu beheben, können die folgenden Schritte unternommen werden:

Option 1: Konvertieren Sie „0000-00-00 00:00:00“ in NULL

  1. Versuchen Sie, Datetime-Spalten mit „0000-00-00 00:00:00“ mithilfe der folgenden Abfrage in NULL zu konvertieren:
ALTER TABLE users MODIFY created datetime NULL DEFAULT '1970-01-01 00:00:00';

Wenn dies fehlschlägt, fahren Sie mit Option 2 fort.

Option 2: Verwenden Sie CHAR Konvertierung

  1. Aktualisieren Sie die betroffenen Zeilen, indem Sie die Datetime-Spalte nur dann auf NULL setzen, wenn ihr Wert „0000-00-00 00:00:00“ als Zeichenfolge ist:
UPDATE users SET created = NULL WHERE CAST(created AS CHAR(20)) = '0000-00-00 00:00:00';

Diese alternative Abfrage verwendet die CAST-Funktion, um Datums-/Uhrzeitwerte in eine Zeichenfolge mit 20 Zeichen umzuwandeln und aktualisiert nur Zeilen, in denen das Ergebnis enthalten ist stimmt mit „0000-00-00 00:00:00“ überein.

Sobald die Aktualisierungen abgeschlossen sind, sollten Sie in der Lage sein, den Zeichensatz und die Sortierung der Datenbanktabelle erfolgreich zu ändern, ohne dass der Fehler „Falscher Datums-/Uhrzeitwert“ auftritt.

Das obige ist der detaillierte Inhalt vonWie behebt man den MySQL-Fehler 1292: „Falscher Datum/Uhrzeit-Wert'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn