Heim  >  Artikel  >  Datenbank  >  Warum erhalte ich MySQL-Fehler 1364: Feld fehlt Standardwert?

Warum erhalte ich MySQL-Fehler 1364: Feld fehlt Standardwert?

DDD
DDDOriginal
2024-11-06 11:49:02544Durchsuche

Why Am I Getting MySQL Error 1364: Field Lacks Default Value?

Fehlerbehebung bei MySQL-Fehler 1364: Feld fehlt Standardwert

Beim Übergang von MAMP zu einer nativen MySQL-Umgebung kann ein Fehler im Zusammenhang mit auftreten Fehlende Standardwerte in Feldern beim Ausführen von INSERT-Befehlen. Dieses Problem betrifft den strikten Modus von MySQL, insbesondere in seiner Einstellung STRICT_ALL_TABLES.

Ursache:

Wenn MySQL im strikten Modus arbeitet, erzwingt es die strikte Einhaltung von Datenbankregeln und -integrität , einschließlich des Nichtzulassens von Null- oder Leerwerten für Felder ohne Standardwerte.

Lösung:

Um dieses Problem zu beheben, können Sie den strikten Modus deaktivieren, indem Sie den folgenden Befehl ausführen:

<code class="sql">SET GLOBAL sql_mode=''</code>

Alternativ können Sie Ihre my.cnf-Konfigurationsdatei ändern, um sicherzustellen, dass STRICT_ALL_TABLES nicht festgelegt ist:

  1. Öffnen Sie die my.cnf-Datei für Ihre MySQL-Installation.
  2. Suchen Sie den Abschnitt [mysqld].
  3. Überprüfen Sie, ob eine Zeile mit folgendem Text vorhanden ist:

    sql_mode = STRICT_ALL_TABLES
  4. Wenn sie vorhanden ist, kommentieren Sie sie aus, indem Sie hinzufügen ein # am Anfang der Zeile.
  5. Speichern und schließen Sie die Datei my.cnf.

Nachdem Sie diese Änderungen vorgenommen haben, starten Sie den MySQL-Dienst neu, um die neuen Einstellungen zu übernehmen. Ihre INSERT-Befehle sollten jetzt erfolgreich ausgeführt werden, ohne dass der Fehler bezüglich fehlender Standardwerte auftritt.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich MySQL-Fehler 1364: Feld fehlt Standardwert?. 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