Valeur par défaut non valide pour l'erreur 'created_at' dans MySQL
Lors de la tentative de modification d'une table, le message d'erreur suivant apparaît :
ERROR 1067 (42000): Invalid default value for 'created_at'
Cette erreur se produit généralement lors de la modification de la colonne d'horodatage, mais dans ce cas, elle se produit lors de l'ajout d'une nouvelle colonne. La table concernée comporte les colonnes 'created_at' et 'updated_at' comme deux dernières entrées.
Résolution
La cause de cette erreur réside dans les paramètres du mode SQL. Pour résoudre le problème, vérifiez le mode SQL actuel à l'aide de la commande :
show variables like 'sql_mode' ;
Si le mode SQL inclut "NO_ZERO_IN_DATE,NO_ZERO_DATE", supprimez ces paramètres pour résoudre le problème. Ces paramètres sont ceux par défaut dans les versions plus récentes de MySQL.
En tant qu'utilisateur root, vous pouvez modifier le mode SQL globalement à l'aide de la commande :
set global sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
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!