Maison >Java >javaDidacticiel >Comment utiliser correctement setDate dans PreparedStatement pour différents types de données de date et d'horodatage ?

Comment utiliser correctement setDate dans PreparedStatement pour différents types de données de date et d'horodatage ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-09 00:10:12878parcourir

How to Properly Use setDate in PreparedStatement for Different Date and Timestamp Data Types?

Utilisation de setDate dans PreparedStatement

Dans le code que vous avez fourni, vous souhaitez insérer une valeur de date dans une table SQL à l'aide d'un PreparedStatement . Lorsque vous utilisez setDate(), il est important de comprendre le format de la valeur de date qui doit être transmise.

Utilisation de java.sql.Date

Pour les colonnes de tapez DATE, vous disposez de plusieurs options lors de la définition de la valeur à l'aide de java.sql.Date :

  • java.lang.String : La chaîne représentant la date doit être au format "aaaa-MM-jj."
  • java.util.Date : Convertissez le java.util.Date en java.sql.Date en utilisant new java.sql.Date(endDate.getTime()).
  • Horodatage actuel : utilisez le nouveau java.sql.Date(System.currentTimeMillis()) pour définir la date actuelle.

Utilisation java.sql.Timestamp

Pour les colonnes de type TIMESTAMP ou DATETIME, utilisez java.sql.Timestamp :

  • java.lang.String : La chaîne représentant l'horodatage doit être au format "aaaa-MM-jj HH:mm:ss[.f...]."
  • java.util.Date : Convertissez le java.util.Date en java.sql.Timestamp en utilisant le nouveau java. sql.Timestamp(endDate.getTime()).
  • Horodatage actuel : Utiliser le nouveau java.sql.Timestamp(System.currentTimeMillis()) pour définir l'horodatage actuel.

Dans votre cas, assurez-vous que la chaîne vDateMDY est au format correct, "aaaa-MM-jj HH : mm: ss." Si ce n'est pas le cas, vous devrez utiliser le format approprié pour le type de données de votre colonne SQL ou envisager d'utiliser setString() et une conversion to_date() dans l'instruction SQL elle-même.

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