Enregistrement dans une base de données Acces à partir de jList et jTextField [Résolu]

Signaler
Messages postés
18
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
26 mai 2010
-
oussamatel
Messages postés
18
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
26 mai 2010
-
salut à tous,

j'ai presque fini le travail que j'ai a faire, un petit truc me dérange encore.

alors, je veux enregistrer dans un Table access les elements de 2 jtextfeild eu une jlist. tout est parfait lorsque j'avais un seul element dans ma jliste, alors quand je doit avoir plus q'un seul element ca commence les problèmes

voici le code que j'ai essayé mais ca me donne qu'un seul element :

Statement st2 = conn.createStatement();
for (i=1 ; i<100; i++){
String req2 =
"INSERT INTO Table2 VALUES('"+list1.getItem(i)+"','"+tfdate.getText()+"','"+tfheure.getText()+"')";
ResultSet res2 = st2.executeQuery(req2);
res2.close();
st2.close();
conn.close();


j'attends vos réponses
merci

6 réponses

Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
14
faut aussi remplacer ton
ResultSet res2 = st2.executeQuery(req2);
res2.close(); 

par un
st2.executeUpdate(req2);
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
14
Il faut mettre ton
st2.close();
et ton
conn.close();
hors de la boucle du "for".
Statement st2 = conn.createStatement();
for (i=1 ; i<100; i++){
String req2 =
"INSERT INTO Table2 VALUES('"+list1.getItem(i)+"','"+tfdate.getText()+"','"+tfheure.getText()+"')";
ResultSet res2 = st2.executeQuery(req2);
res2.close();

} 
st2.close();
conn.close();
Messages postés
18
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
26 mai 2010

salut,

jai essayé se faire sortir les deux instructions
st2.close();
conn.close();
hors de la boucle 'for' mais j'ai toujours la même résultat rien n'est changé : toujours un seul élément

REMARQUE :j'ai un seul element "tfdate" et un seul élément "tfheures" qui doivent se répéter dans ma base de données et le nombre de répétitions c'est celui le nombre des elements de ma JList.
Messages postés
18
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
26 mai 2010

salut,

merci beaucoup laurent1024, tout vas très bien et j'ai eu tout ce que j'ai besoin.
un simple petit truc qui manque c'est que lorsque je veux ajouter des éléments à la même base que j'ai. je suis face à un message d'erreur

[Microsoft][Pilote ODBC Microsoft Access] Modifications non effectuées: risque de doublons dans champs index, clé principale ou relation interdisant les doublons. Modifiez les données des champs contenant les doublons, enlevez ou redéfinissez l'index pour permettre les doublons et recommencez.
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
14
Le message d'erreur me semble clair :
tu dois avoir dans ta table un index ou une clef primaire, ce qui t'empêche d'ajouter plusieurs fois le même enregistrement dans ta base de données.
Soit il faut modifier ta table dans la base de données, soit ne faire que des "insert" que pour les données qui ne sont pas encore stockées en base, soit éventuellement faire des requêtes de mis à jour (update)... tout cela dépend de ce que ton appli doit faire.
Messages postés
18
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
26 mai 2010

salut,

merci à toi Laurent1024
Mon travail est fini, et tout vas bien

je vous remercie tous