MySQL sql_mode "TRADITIONAL"
, también conocido como "modo estricto", está definido por los documentos de MySQL
como:
Aquí se explica cómo asegurarse de que su sql_mode esté configurado en "TRADITIONAL"
.
Primero, comprueba tu configuración actual:
mysql
mysql> SELECT @@GLOBAL.sql_mode;
+-------------------+
| @@GLOBAL.sql_mode |
+-------------------+
| |
+-------------------+
1 row in set (0.00 sec)
Esto devolvió en blanco, el valor predeterminado, eso es malo:su sql_mode no está configurado en "TRADICIONAL".
Así que edite el archivo de configuración:
sudo vim /etc/mysql/my.cnf
Agregue esta línea en la sección etiquetada [mysqld]
:sql_mode="TRADITIONAL"
(como señaló fancyPants)
Luego reinicie el servidor:
sudo service mysql restart
Luego verifique de nuevo:
mysql
mysql> SELECT @@GLOBAL.sql_mode;
+------------------------------------------------------------------------------------------------------------------------------------------------------+
| @@GLOBAL.sql_mode |
+------------------------------------------------------------------------------------------------------------------------------------------------------+
| STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
¡Éxito! Eres dorado ahora.