JDBC ResultSet getDate perdre la précision
Je suis de perdre de la précision dans mon jeu de résultats.getDate(x) appels. En gros:
rs = ps.executeQuery();
rs.getDate("MODIFIED");
est de retour dates tronquées au jour où MODIFIÉ est un Oracle champ TIMESTAMP de précision par défaut. Je pense qu'il peut y avoir certains JDBC tweak, je suis absent; généralement TIMESTAMP est compatible avec la DATE, mais j'espère que je n'ai pas à redéfinir l'ensemble de la table.
Vous devez vous connecter pour publier un commentaire.
jeu de résultats.getDate()
renvoie unejava.sql.Date
, pas unjava.util.Date
. Il est défini pour être un intemporel de la date.Si vous voulez un timestamp, l'utilisation
jeu de résultats.méthode gettimestamp()
!Vous devez utiliser java.sql.Timestamp au lieu de java.sql.Date. Vous pouvez l'utiliser comme un java.util.Date de l'objet par la suite si nécessaire.
Espère que cette aide.
new Date
est inutile puisqueTimestamp extends Date
.À l'aide de Timestap est la bonne manière.
Merci de prendre pas que, avec Horodatage, vous ne serez pas en mesure de définir les colonnes à nullable si vous utilisez Liquibase.
Un problème je suis tombé sur ainsi.