sql >> Databáze >  >> RDS >> Mysql

mysql nelze vložit, protože neexistuje výchozí hodnota?

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

price decimal(6,2) NOT NULL,

Nastavte cenu na null nebo přiřaďte výchozí hodnotu

UPRAVIT:

To je způsobeno STRICT_TRANS_TABLES Režim SQL.

Otevřete phpmyadmin a přejděte na More Tab a vyberte Variables podnabídka. Přejděte dolů a vyhledejte režim SQL. Upravte režim SQL a odstraňte STRICT_TRANS_TABLES Uložte si to.

NEBO

SQL dotaz můžete spustit ve vašem nástroji pro správu databází, jako je phpMyAdmin:

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

NEBO

Najděte v souboru mysql conf řádek, který takto vypadá:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

Komentář nad řádek a restartujte server mysql



  1. SQL Server, převést pojmenovanou instanci na výchozí instanci?

  2. Analýza řetězce do data mysql

  3. Bash skript pro vložení hodnot do MySQL

  4. Přidejte sloupec s výchozí hodnotou do existující tabulky na SQL Server