IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

[Oracle][Java]Date et heures:minutes


Sujet :

JDBC Java

  1. #1
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut [Oracle][Java]Date et heures:minutes
    Salut,

    J'ai actuellement une date dans ma base oracle :
    27/07/2006 09:17
    Je la récupere via une requete sous forme de java.sql.Date que je formate grâce à un SimpleDateFormat pour récupérer uniquement les heures et les minutes "kk:mm"

    Le problème, c'est que cela me renvoie :
    24:00
    Pourquoi ? Qu'ai-je mal fait ?

    merci

    Fred

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Tu n'utilises pas le bon type : java.sql.Date correspond au type SQL DATE, qui ne comporte pas d'heure ni de minute, mais seulement le jour, le mois et l'année...

    Ainsi les informations d'heures/minutes/secondes etc. que tu obtiens ne sont pas celle en provenance de la BD :

    http://javasearch.developpez.com/j2s.../sql/Date.html
    To conform with the definition of SQL DATE, the millisecond values wrapped by a java.sql.Date instance must be 'normalized' by setting the hours, minutes, seconds, and milliseconds to zero in the particular time zone with which the instance is associated.
    Le type java.sql.Time, qui correspond au type SQL TIME, ne comporte lui que l'heure/minutes/secondes...


    Le mieux serait d'utiliser le type java.sql.TimeStamp, qui correspond au type SQL TIMESTAMP, et qui contient toutes les informations (plus les nanosecondes).


    Lorsque tu n'utilises pas le bon type, le driver JDBC s'adapte pour te rendre quelque chose de "cohérent" à ce que tu demandes... C'est pourquoi tu perdais l'heure...


    a++

    PS : Attention à l'utilisation de la classe TimeStamp, car à cause des nanosecondes tu peux avoir des différences d'égalités avec java.util.Date...

  3. #3
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    es tu sûr de la date que tu essaies de formater ?

    un petit bout de code ?

    [EDIT] ok, bien grillé !

  4. #4
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut
    Ca marche au poil :-*

    Je n'avais pas vu getTimestamp(String) ...

    merciiii

    Fred

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [oracle & java] recupérer date+heure
    Par ensemien dans le forum JDBC
    Réponses: 2
    Dernier message: 07/02/2013, 11h02
  2. Réponses: 3
    Dernier message: 24/09/2008, 16h23
  3. Réponses: 7
    Dernier message: 15/02/2008, 12h36
  4. [HIBERNATE] date sans heure minute seconde
    Par _juel_ dans le forum Hibernate
    Réponses: 1
    Dernier message: 30/06/2006, 14h43
  5. [Oracle 9i] Date avec Heure + comparaison
    Par MinsK dans le forum Oracle
    Réponses: 8
    Dernier message: 21/11/2005, 12h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo