[DEBUTANTE] Formater et inserer une date dans une

mariafan Messages postés 6 Date d'inscription mardi 26 décembre 2006 Statut Membre Dernière intervention 11 juin 2008 - 26 déc. 2006 à 14:11
cs_bouba Messages postés 518 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 novembre 2007 - 26 déc. 2006 à 23:50
Bonjour,
Merci de bien vouloir m'aider à résoudre ce pb qui bloque l'avancement de mon projet.
voilà, je travaille avec un BDD my SQL dans laquelle je dois inserer une date de majoration des

enseignants. Le problème est que j'ai des erreurs: il ne prend pas le paramètre

"Date dateActuelle"et j'arrive pas à  tester mon code avec le void main que j'ai fait car il ne prend pas le format de date que je lui passe dans la fonction AjoutS. voilà ce que j'ai fait:

public void AjoutS(String Enseignant,int EtatP,String Module,int he,int hp,Date dateActuelle)
    {
dateActuelle= new Date(dateActuelle.getTime());
//création d'un objet date et mise à jour de la date courante
       
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
//création d'un format de date pour Mysql
       
dateActuelle.getTime();
//mise a jour de la date courante

dateFormat.format(dateActuelle);
//une chaine date formatée.

String requete="INSERT INTO services(NomEnseignant,Module,EtatPaiement,NbHeuresPrevues,NbHeuresEffectuees, DateMaj)

VALUES('"+Enseignant+"','"+Module+"','"+EtatP+"','"+he+"','"+hp+"',

'"+dateFormat.format(dateActuelle)+"')";
       
        try{
        stat.executeUpdate(requete);
        }
        catch(SQLException e)
        {
            System.out.println ("Probleme mise a jour table");
        }
    }

public static void main(String[] args) {
       
        Mysql m=new Mysql();

m.AjoutS("maria",30,"C45",12,9,"25/12/2006");

}

aidez moi svp, je suis vraiment bloquée avec ce pb.

1 réponse

cs_bouba Messages postés 518 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 novembre 2007 3
26 déc. 2006 à 23:50
Salut, je pense que ton problème est assez simple, tu passes un String à ta fonction au lieu de lui passer un objet Date.


m.AjoutS("maria",30,"C45",12,9,"25/12/2006");


A remplacer par


m.AjoutS("maria",30,"C45",12,9, new Date("25/12/2006"));


Cependant le constucteur Date(String) est déprécié, il vaut mieux utiliser ceci.


m.AjoutS("maria",30,"C45",12,9, DateFormat.parse("25/12/2006"));


Voilà, en espérant que mes conseils ont étés bons.


Bonne chance.


Bouba.
0
Rejoignez-nous