Maison >base de données >tutoriel mysql >Comment corriger l'erreur MySQL 1292 : « Valeur date/heure incorrecte » ?
Valeur date/heure incorrecte : résolution de l'erreur MySQL 1292
Lors de la conversion d'une base de données existante avec des valeurs date/heure stockées sous la forme '0000-00-00 00 : 00:00', les utilisateurs peuvent rencontrer l'erreur MySQL 1292 : "Valeur datetime incorrecte." Cette erreur se produit en raison de conflits de version entre la base de données MySQL d'origine (par exemple, 5.1) et les versions plus récentes (par exemple, 5.7), qui gèrent les valeurs datetime différemment.
Pour résoudre ce problème, les étapes suivantes peuvent être suivies :
Option 1 : Convertir '0000-00-00 00:00:00' en NULL
ALTER TABLE users MODIFY created datetime NULL DEFAULT '1970-01-01 00:00:00';
Si cela échoue, passez à l'option 2.
Option 2 : utiliser CHAR Conversion
UPDATE users SET created = NULL WHERE CAST(created AS CHAR(20)) = '0000-00-00 00:00:00';
Cette requête alternative utilise la fonction CAST pour convertir les valeurs datetime en une chaîne de caractères de 20 caractères et met à jour uniquement les lignes où le résultat correspond à « 0000-00-00 00:00:00 ».
Une fois les mises à jour terminées, vous devriez pouvoir modifier avec succès le jeu de caractères et le classement de la table de base de données sans rencontrer l'erreur de valeur datetime incorrecte.
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!