Mysql
 sql >> Datenbank >  >> RDS >> Mysql

mysql kann nicht einfügen weil kein default wert?

ERROR 1364 (HY000): Field 'price' doesn't have a default value

price decimal(6,2) NOT NULL,

Setzen Sie den Preis auf null oder weisen Sie einen Standardwert zu

BEARBEITEN:

Dies wird durch STRICT_TRANS_TABLES verursacht SQL-Modus.

Öffnen Sie phpmyadmin und gehen Sie zu More Tab und wählen Sie Variables Untermenü. Scrollen Sie nach unten, um den SQL-Modus zu finden. Bearbeiten Sie den SQL-Modus und entfernen Sie STRICT_TRANS_TABLES Speichern.

ODER

Sie können eine SQL-Abfrage in Ihrem Datenbankverwaltungstool ausführen, z. B. phpMyAdmin:

-- verify that the mode was previously set:
SELECT @@GLOBAL.sql_mode;
-- update mode:
SET @@GLOBAL.sql_mode= 'YOUR_VALUE';

ODER

Suchen Sie in der mysql-conf-Datei nach der Zeile, die so aussieht:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

Kommentieren Sie die obige Zeile aus und starten Sie den MySQL-Server neu