Maison > base de données > tutoriel mysql > Comment corriger l'erreur MySQL 1292 : « Valeur date/heure incorrecte » ?

Comment corriger l'erreur MySQL 1292 : « Valeur date/heure incorrecte » ?

Patricia Arquette
Libérer: 2024-12-02 09:07:13
original
677 Les gens l'ont consulté

How to Fix MySQL Error 1292:

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

  1. Tentative de conversion des colonnes datetime avec « 0000-00-00 00:00:00 » en NULL à l'aide de la requête suivante :
ALTER TABLE users MODIFY created datetime NULL DEFAULT '1970-01-01 00:00:00';
Copier après la connexion

Si cela échoue, passez à l'option 2.

Option 2 : utiliser CHAR Conversion

  1. Mettez à jour les lignes concernées en définissant la colonne datetime sur NULL uniquement si sa valeur est '0000-00-00 00:00:00' sous forme de chaîne de caractères :
UPDATE users SET created = NULL WHERE CAST(created AS CHAR(20)) = '0000-00-00 00:00:00';
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal