


Pourquoi est-ce que je reçois le code d'erreur MySQL 1292 : valeur de date incorrecte ?
Oct 29, 2024 pm 09:48 PM<h2>Code d'erreur MySQL 1292 : Analyse et résolution</h2>
Lors de la tentative d'insertion de données dans la table ALBERGO, un message d'erreur s'affiche : "Code d'erreur : 1292. Valeur de date incorrecte : '01-05-2012' pour la colonne 'data_apertura' à la ligne 1." Cette erreur indique un problème avec le format de date spécifié dans la requête.
<h3>Comprendre le code d'erreur</h3>
Le code d'erreur 1292 est spécifiquement lié à des valeurs de date incorrectes. La documentation MySQL indique que les valeurs de date non valides telles que « 0000-00-00 00:00:00 » ne sont pas autorisées dans la version 5.7 et supérieure.
<h3>Dépannage et solution</h3>
Pour résoudre cette erreur, le format de date doit être modifié pour respecter les exigences de MySQL 5.7. Le problème réside dans le fait que la valeur de date '01-05-2012' est au format jj/mm/aaaa plutôt que le format attendu aaaa-mm-jj.
Pour rectifier cela, localisez le fichier my.cnf sur votre système, généralement trouvé dans /etc/mysql/my.cnf. Pour les utilisateurs Windows, il se trouve généralement dans C:ProgramDataMySQLMySQL Server 8.0my.ini.
Modifiez le fichier et accédez à la section [mysqld]. Ajoutez les lignes suivantes dans cette section :
sql_mode="NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
Ce sql_mode modifié permettra à MySQL d'accepter des valeurs de date qui n'étaient pas valides auparavant, y compris « 01-05-2012 ».
Enregistrez les modifications au fichier my.cnf et redémarrez le service MySQL à l'aide des commandes appropriées pour votre système d'exploitation (par exemple, sudo service mysql restart pour Linux).
<h3>Requête mise à jour</h3>
Avec le sql_mode modifié, vous pouvez désormais exécuter la requête d'insertion avec le format de date corrigé :
INSERT INTO `PROGETTO`.`ALBERGO` (`ID`, `nome`, `viale`, `num_civico`, `data_apertura`, `data_chiusura`, `orario_apertura`, `orario_chiusura`, `posti_liberi`, `costo_intero`, `costo_ridotto`, `stelle`, `telefono`, `mail`, `web`, `Nome-paese`, `Comune`) VALUES (0, 'Hotel Centrale', 'Via Passo Rolle', '74', '2012-05-01', '2012-09-31', '06:30', '24:00', 80, 50, 25, 3, '43968083', '[email&#160;protected]', 'http://www.hcentrale.it/', 'Trento', 'TN');
Cette requête modifiée s'exécutera désormais avec succès sans le code d'erreur 1292.
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!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Réduisez l'utilisation de la mémoire MySQL dans Docker

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE?

Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée

Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin)

Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape

Comment sécuriser MySQL contre les vulnérabilités communes (injection SQL, attaques par force brute)?

Comment configurer le cryptage SSL / TLS pour les connexions MySQL?
