sql >> Base de Datos >  >> RDS >> Mysql

mysql no puede insertar porque no hay valor predeterminado?

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

price decimal(6,2) NOT NULL,

Establezca el precio en nulo o asigne un valor predeterminado

EDITAR:

Esto es causado por STRICT_TRANS_TABLES Modo SQL.

Abre phpmyadmin y ve a More Pestaña y selecciona Variables submenú. Desplácese hacia abajo para encontrar el modo sql. Edite el modo sql y elimine STRICT_TRANS_TABLES Guárdalo.

O

Puede ejecutar una consulta SQL dentro de su herramienta de administración de base de datos, como phpMyAdmin:

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

O

Busque la línea que se ve así en el archivo mysql conf:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

Comenta arriba y reinicia el servidor mysql