Heim >Datenbank >MySQL-Tutorial >Warum erhalte ich in MySQL die Fehlermeldung „Ungültiger Standardwert für ‚created_at''?
Ungültiger Standardwert für „created_at“-Fehler in MySQL
Beim Versuch, eine Tabelle zu ändern, wird die folgende Fehlermeldung angezeigt:
ERROR 1067 (42000): Invalid default value for 'created_at'
Dieser Fehler tritt normalerweise auf, wenn die Zeitstempelspalte geändert wird. In diesem Fall tritt er jedoch beim Hinzufügen einer neuen Spalte auf. Die betroffene Tabelle hat als letzte beiden Einträge die Spalten „created_at“ und „updated_at“.
Lösung
Die Ursache dieses Fehlers liegt in den SQL-Moduseinstellungen. Um das Problem zu beheben, überprüfen Sie den aktuellen SQL-Modus mit dem folgenden Befehl:
show variables like 'sql_mode' ;
Wenn der SQL-Modus „NO_ZERO_IN_DATE,NO_ZERO_DATE“ enthält, entfernen Sie diese Einstellungen, um das Problem zu beheben. Diese Einstellungen sind die Standardeinstellungen in neueren Versionen von MySQL.
Als Root-Benutzer können Sie den SQL-Modus global ändern, indem Sie den folgenden Befehl verwenden:
set global sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in MySQL die Fehlermeldung „Ungültiger Standardwert für ‚created_at''?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!