Bonjour,
J'ai une variable de type long représentant une durée en secondes que je souhaiterais placer dans un champ SQL de type datetime 0000-00-00 00:00:00
Comment puis-je effectuer cette conversion ?
Merci de votre aide
Bonjour,
J'ai une variable de type long représentant une durée en secondes que je souhaiterais placer dans un champ SQL de type datetime 0000-00-00 00:00:00
Comment puis-je effectuer cette conversion ?
Merci de votre aide
En utilisant le type Date de java.
(Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Mais comment ? Je me retrouve toujours avec une date basée sur l'année 1970...
Une durée n'est pas de type DateTime mais Time... et encore... il faut que la durée soit inférieure à 24 heures.
Si par contre tu veux utiliser DateTime, la partie Date étant insignifiante, le fait qu'on y retrouve le 01/01/1970 n'a rien d'étonnant...
La donnée représente quoi au juste ?
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Tu peux faire avec joda API
Seulement ton long represente la duree a partir de certaine date comme OButterlin a mentione
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 long dateTimeInSecond; DateTime myDate = new DateTime(); dateTimeInSecond = myDate.getMillis(); DateTime myDateFromLong = new DateTime(dateTimeInSecond); System.out.println(myDate + "|" + myDateFromLong);
Intéressante cette API, je vais m'y pencher...
La donnée représente le temps total passé sur le programme. J'aurais pu l'écrire directement en secondes dans la BD, mais je trouvais datetime plus commode à lire...
ben oui, sauf que datetime est destiné comme son nom l'indique à stocker de date avec l'heure, pas des durées.... problème difficilement soluble, a moins de prendre une date et heure pivot comme référence. Bref, mauvais choix coté sql a mon avis, pas la peine d'essayer de contourner ca niveau code.
Ça n'a ni queue ni tête si je puis me permettre, ta donnée est de type long ou integer, pas DATETIME ou TIME ou TIMESTAMP ou DATE.
Je ne vois pas ce qui te dérange...
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
J'ai jamais bien compris pourquoi ne pas stocker les durées tout simplement comme un entier représentant la durée en millisecondes.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
C'est ce que je vais faire... Merci pour vos réponses !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager