Conflit de Date sur BD et sur Formulaire Java

Résolu/Fermé
rainbow89 Messages postés 121 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 16 novembre 2015 - 16 sept. 2011 à 12:42
rainbow89 Messages postés 121 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 16 novembre 2015 - 19 sept. 2011 à 16:58
Bonjour,
Je fais un application avec Java et Jdbc , dans l'un de mes formulaires Java j'ai un champ Date qui est choisi a partir d'un petit calendrier (DatePicker) , le probleme c'est que la date affichee sur le formulaire et celle stockee dans la base de donnees Mysql sont differentes au niveau du Mois, en effet il me stocke tjrs le mois de Janvier (01) quelque soit le mois choisi au prealable dans mon formulaire.
j'ai deja eu un conflit entre java.sql.Date et Java.util.Date mais j'ai réglé le probleme ... il ne me donne plus d'erreur.
Merci d'avance


A voir également:

3 réponses

rodoplop Messages postés 77 Date d'inscription vendredi 16 septembre 2011 Statut Membre Dernière intervention 6 juillet 2012 12
16 sept. 2011 à 23:52
Bonsoir,

aurais tu un petit bout de code à nous montrer pour faire avancer ton problème ?

de plus, la date enregistré dans ta base, est une simple date ou un datetime ?
0
rainbow89 Messages postés 121 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 16 novembre 2015 3
19 sept. 2011 à 14:23
Bonjour rodoplop,
Merci pour ta réponse,
voici la partie du code qui gère l'insertion dans la base de données :
Merci

Date d=null;
SimpleDateFormat dt=new SimpleDateFormat("yyyy-mm-dd");

//Conversion en java.util.Date
java.util.Date date = null;
try {
date = dt.parse(t3.getText());
} catch (ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}


java.sql.Date sqlDate = new java.sql.Date(date.getTime());

try{
Class.forName("com.mysql.jdbc.Driver");
Connection co=DriverManager.getConnection("jdbc:mysql://localhost:3306/uniforce","root","root");

Statement s=co.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
PreparedStatement stm=(PreparedStatement) co.prepareStatement("insert into reponses values(?,?,?,?,?,?,?,?)");

//Insertion
stm.setInt(1,no);
stm.setInt(2,nc);
stm.setDate(3,sqlDate);
stm.setString(4,resp);
stm.setString(5,ob);
stm.setFloat(6,mont);
stm.setInt(7,dur);
stm.setString(8,comment);
stm.executeUpdate();
co.close()
0
rodoplop Messages postés 77 Date d'inscription vendredi 16 septembre 2011 Statut Membre Dernière intervention 6 juillet 2012 12
19 sept. 2011 à 15:37
En essayant de créer ta date de cette manière, est ce que cela fonctionne :

java.sql.Date date = new java.sql.Date((new GregorianCalendar(2011, 09, 19)).getTime().getTime());
0
rainbow89 Messages postés 121 Date d'inscription lundi 8 mars 2010 Statut Membre Dernière intervention 16 novembre 2015 3
19 sept. 2011 à 16:58
merci rodolop j'ai trouve le probleme au fait dans le sumple date format je devais mettre mm en majuscule :
SimpleDateFormat dt=new SimpleDateFormat("yyyy-MM-dd");
Merci en ttcas pr ton aide c tres gentiiiiiil
merciii
0