Utilisation de setDate dans PreparedStatement
Pour respecter les normes de codage, votre tâche consiste à mettre à jour votre code pour utiliser des instructions préparées et lier des variables plutôt que de coder en dur des variables SQL. Cependant, vous avez rencontré un problème avec la méthode setDate().
Pour résoudre ce problème, les instructions suivantes doivent être suivies :
Utilisation de java.sql.Date
Si votre table a une DATE column:
-
java.lang.String:
Utilisez la méthode java.sql.Date.valueOf(java.lang.String), en fournissant une chaîne dans le " aaaa-[m]m-[d]d" format.
-
java.util.Date :
Si vous avez une variable java.util.Date endDate, convertissez-la en utilisant ps.setDate(2, new java.sql.Date (endDate.getTime()));.
-
Current :
Pour insérer le courant date, utilisez ps.setDate(2, new java.sql.Date(System.currentTimeMillis())); ou ps.setDate(2, java.sql.Date.valueOf(java.time.LocalDate.now())); (Java 8 et versions ultérieures).
Utilisation de java.sql.Timestamp
Pour les colonnes TIMESTAMP ou DATETIME :
-
java.lang.String :
Utilisez la méthode java.sql.Timestamp.valueOf(java.lang.String) avec des horodatages au format "aaaa-[m]m-[d]d hh:mm:ss[.f...]".
-
java.util.Date :
Convertissez les variables java.util.Date à l'aide de ps.setTimestamp(2, nouveau java.sql.Timestamp(endDate.getTime()));.
-
Current :
Obtenez l'horodatage actuel à l'aide de ps.setTimestamp(2, new java.sql.Timestamp( System.currentTimeMillis())); ou ps.setTimestamp(2, java.sql.Timestamp.valueOf(java.time.LocalDateTime.now())); (Java 8 et versions ultérieures).
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!