Oups, MySQL : Field ‘xx’ doesn’t have a default value

Publié le 14-05-2018
etoiles_notation etoiles_notation etoiles_notation etoiles_notation etoiles_notation
Votes : 6 - Note : 4.2




Un petit truc rapide qui peut dépanner dans le cas d'une nouvelle installation MySql qui fait des siennes



mysql


Oups, MySQL : Field ‘xx’ doesn’t have a default value

Tout se passait bien, installation EasyPHP finie, vérifiée, premiers tests et tout d'un coup : patatras !
"Field ‘xxxx’ doesn’t have a default value" apparaît dans la console. Le sourire se fige et le café prend un goût amer : La base de données ne veut pas insérer ou updater dans le cas de champs vides sans valeur par défaut -(

Deux solutions : reprendre les champs (ALTER) à convenance

ALTER TABLE mytable MODIFY mycolumn VARCHAR(255)





ce qui peut vite être fastidieux dans le cas de gros projets, ou plus simplement, modifier la config de votre Base.

Pour ce faire, éditer le fichier my.ini (ou parfois my.cnf), commenter cette ligne et ajouter un mode sql, ce qui donne :


#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
sql_mode = ""



Tout simplement. Vous pouvez ensuite redémarrer le serveur et utiliser INSERT et UPDATE sans vous soucier des champs vides.



Modifié le 30-09-2019

Commentaires

Pas encore de commentaire

Publier un commentaire :



capcha   






GB-Net.fr 2019