Bonjour,
Voilà un bon moment que je m'évertue à essayer d'insérer un champ date et un champ heure dans une BDD MySQL 5.0.
Voilà ce que je fais :
- J'ai une table comportant : un champ Rdate de type sql DATE et un champ Rtime de type sql TIME.
Dans mon programme je fais :
L'ennui c'est que, si l'insertion en BDD est effectuée, les champs récupérés sont ceux-ci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 java.sql.Date maDate = rep.getDate(); // me renvoie 2006-07-04 java.sql.Time monHeure = rep.getTime() // me renvoie 15:41:04 etc. .......... pstmt.setDate(2, maDate); pstmt.setTime(3, monHeure); etc. .......... pstmt.execute();
----------------------
| Rdate | 4 juil. 2006 | --> Ca c'est parfait
----------------------
| Rtime | 1 janv. 1970 | --> La je suis contrariée
-----------------------
D'après le manuel de référence de MySQL :
Attention à certains pièges concernant les spécifications de dates :
La syntaxe à délimiteur libre peut être une source de problème. Par exemple, une valeur telle que ‘10:11:12’ ressemble à une heure, à cause du délimiteur `‘:’', mais avec une colonne de date, elle sera interprétée comme la date ‘2010-11-12’. La valeur ‘10:45:15’ sera convertie en ‘0000-00-00’ car ‘45’ n'est pas un mois valide.
Du coup, comment j'arrange mes affaires dans mon code source ?
Merci de votre aide !
Partager