Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens l'erreur MySQL 1364 : le champ n'a pas de valeur par défaut ?
Dépannage de l'erreur MySQL 1364 : le champ manque de valeur par défaut
Lors de la transition de MAMP vers un environnement MySQL natif, vous pouvez rencontrer une erreur liée à valeurs par défaut manquantes dans les champs lors de l'exécution des commandes INSERT. Ce problème concerne le mode strict de MySQL, en particulier dans son paramètre STRICT_ALL_TABLES.
Cause :
Lorsque MySQL fonctionne en mode strict, il impose le strict respect des règles et de l'intégrité de la base de données. , notamment en interdisant les valeurs nulles ou vides pour les champs sans valeurs par défaut.
Résolution :
Pour résoudre ce problème, vous pouvez désactiver le mode strict en exécutant la commande suivante :
<code class="sql">SET GLOBAL sql_mode=''</code>
Vous pouvez également modifier votre fichier de configuration my.cnf pour vous assurer que STRICT_ALL_TABLES n'est pas défini :
Vérifiez s'il y a une ligne qui dit :
sql_mode = STRICT_ALL_TABLES
Après avoir effectué ces modifications, redémarrez le service MySQL pour appliquer les nouveaux paramètres. Vos commandes INSERT devraient maintenant s'exécuter avec succès sans rencontrer l'erreur concernant les valeurs par défaut manquantes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!