Maison  >  Article  >  base de données  >  Comment gérer les horodatages \'0000-00-00 00:00:00\' dans JDBC ?

Comment gérer les horodatages \'0000-00-00 00:00:00\' dans JDBC ?

DDD
DDDoriginal
2024-11-01 09:25:30431parcourir

How to Handle '0000-00-00 00:00:00' Timestamps in JDBC?

Gestion des erreurs JDBC : gestion de la représentation de l'horodatage '0000-00-00 00:00:00'

Lorsque vous traitez des bases de données, il est courant rencontrer des scénarios dans lesquels des dates vides sont insérées, ce qui entraîne l'attribution automatique de valeurs irréalistes comme '0000-00-00 00:00:00'. Si vous utilisez MySQL et essayez de récupérer des données contenant de telles valeurs à l'aide de java.sql.Timestamp de Java, vous risquez de rencontrer l'erreur "...'0000-00-00 00:00:00' ne peut pas être représenté comme Java. .sql.Timestamp."

Pour résoudre ce problème sans modifier la structure de vos tables de base de données, vous pouvez utiliser une URL JDBC qui inclut la configuration suivante paramètre :

zeroDateTimeBehavior=convertToNull

En ajoutant ce paramètre à la configuration de votre source de données, vous pouvez spécifier que toutes les valeurs d'horodatage « 0000-00-00 00:00:00 » doivent être converties en valeurs nulles lorsqu'elles sont représentées en Java. .sql.Timestamp. Cela vous permet de récupérer votre ResultSet sans rencontrer d'erreurs liées à une représentation d'horodatage incorrecte.

Voici un exemple d'URL JDBC qui inclut le paramètre zeroDateTimeBehavior :

jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull

En utilisant cette configuration, vous peut gérer gracieusement les horodatages stockés sous le nom « 0000-00-00 00:00:00 » dans votre base de données, permettant ainsi vous de récupérer et de traiter vos données sans aucune interruption.

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!

Déclaration:
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