Ich versuche, Migrationen auf meiner Laravel-Instanz auszuführen. Sie sind nur die Standardmigrationen (Benutzer und Passwort zurückgesetzt), aber wenn es versucht, die Zeitstempel zu machen, wirft es diesen Fehler:
%Vor%sowie eine PDOException:
%Vor%Wie kann ich das beheben?
Danke.
Dies ist darauf zurückzuführen, dass MySQL Null nicht als gültiges Standarddatum akzeptiert und daher die Erstellung der Tabelle eine Einschränkungsprüfung bei der Erstellung nicht besteht.
Sie haben wahrscheinlich NO_ZERO_DATE
in Ihrer MySQL-Konfiguration aktiviert . Wenn Sie diese Einstellung deaktivieren, können Sie die Tabelle erstellen oder alternativ den Standardwert 0 entfernen oder in CURRENT_TIMESTAMP
.
Sie können mehr über dieses genaue Problem hier erfahren: Ссылка
Ich habe den gleichen Fehler erlebt. Vorgegebene Lösungen funktionieren immer noch, ich möchte Laravel-Entwicklern helfen. Fügen Sie einfach eine folgende Zeile zu config / database.php
hinzu %Vor%es klingt wie strikter Modus.
Sie können den strikten Modus auf zwei Arten deaktivieren:
Öffnen Sie Ihre my.ini-Datei im MySQL-Installationsverzeichnis und suchen Sie nach dem Text sql-mode.
Finde:
sql-mode="STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION"
und wechseln Sie zu
sql-mode="NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION"
oder Sie können Folgendes in phpMyAdmin
ausführenSET @@ global.sql_mode = '';
Dies liegt daran, dass MySQL keine Null als gültiges Standarddatum akzeptiert, so dass Sie
schreiben können %Vor% oder $table->nullableTimestamps();
Anstelle von $table->timestamps();
Ich habe die folgende Methode verwendet:
%Vor%Wirklich funktioniert!
Das Migrieren alter Tabellen funktioniert folgendermaßen:
%Vor%von Ссылка