Maison > base de données > tutoriel mysql > Comment gérer les valeurs DATETIME 0000-00-00 00:00:00 de MySQL avec JDBC ?

Comment gérer les valeurs DATETIME 0000-00-00 00:00:00 de MySQL avec JDBC ?

Barbara Streisand
Libérer: 2025-01-02 13:05:38
original
634 Les gens l'ont consulté

How to Handle MySQL's 0000-00-00 00:00:00 DATETIME Values with JDBC?

Gestion nulle JDBC pour les valeurs DATETIME de 0000-00-00 00:00:00

MySQL traite les valeurs DATETIME de 0000-00- 00 00:00:00 comme "quasi-nul" valeurs, et tenter de récupérer des valeurs telles que des chaînes à partir d'une connexion JDBC peut entraîner une exception.

Pour résoudre ce problème, envisagez d'utiliser les solutions suivantes :

Option 1 : Casting en CHAR

Vous pouvez explicitement convertir la colonne DATETIME en CHAR dans votre SQL requête :

SELECT CAST(add_date AS CHAR) AS add_date
Copier après la connexion

Cela renverra la chaîne DATETIME brute sans la convertir en un type de données spécifique.

Option 2 : Utilisation de la configuration JDBC

Alternativement, vous pouvez configurer votre URL JDBC avec le ZeroDateTimeBehavior paramètre :

jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
Copier après la connexion

Avec cette configuration, les valeurs DATETIME de 0000-00-00 00:00:00 seront automatiquement converties en NULL dans votre ResultSet.

Le paramètre zeroDateTimeBehavior peut prendre différents valeurs :

  • exception : Lève une exception (par défaut)
  • convertToNull : Convertit la valeur en NULL
  • round : Arrondit la valeur à la valeur la plus proche (0001-01-01 )

Notez que ce paramètre affecte toutes les colonnes DATETIME de votre base de données.

Source :

  • Manuel MySQL : https://dev.mysql.com/doc/connector-j/5.1/en/connector- j-référence-configuration-properties.html

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