cs_amounaups
Messages postés5Date d'inscriptionsamedi 16 février 2008StatutMembreDernière intervention 4 juin 2010
-
2 juin 2010 à 13:23
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020
-
4 juin 2010 à 19:02
bonjour,
j'ai un probleme au niveau du code j'arrive pa a assimiler les choses
je ss entrain de réaliser une application gestion commerciale en netebeans et je veux faire la jointure entre 2 table que j'ai designation et totalunitaire dans la table produit et quantite ,total Ht en detailcommande mnt je veu inserer les informations dans jtable que j'ai sur netbeans
Connection cn = Connexion.connectDB();
try{
Statement st=cn.createStatement();
Date dt =Date.valueOf(dateCombobean1.getDateFormatString());
int i=st.executeUpdate("insert into autreformation(dateactuel) values('"+dt+"')");
if(i==1)
cn.close();
}
catch(Exception e){
JOptionPane.showMessageDialog(null, e.getMessage());
}
try{
Connection cn = Connexion.connectDB();
Statement st = cn.createStatement();
String c = (String) comboclient.getSelectedItem();
int t = st.executeUpdate("select a.designation ,a.prixunitaire ,b.quantite,b.PrixU ,b.PrixT from produit as a ,detailcommande as b
remplirtable();
if(t!= 0){
JOptionPane.showMessageDialog(this,"Votre enregistrement a été effectué avec succés!");}
cn.close();
} catch(Exception e){
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
il y a des erreurs au niveau du code s'il vous plait aider moi
voila mon email pr me repondre limam.amina@gmail.com
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 4 juin 2010 à 07:40
Je pense qu'il aurait été préférable de poster ton message sur le forum java, mais bon, c'est pas grave.
Quand tu fais un executeUpdate, c'est que tu modifies la table, la méthode te retourne un code de sortie qui te dis si oui ou non, il y a eu une erruer. Dans le cas ou tu fais un select sur la table, il ne faut pas utiliser executeUpdate mais executeQuery qui te retourne un ResultSet avec les résultats de ta requete.
Tu ne geres pas correctement les exceptions, normalement il faut faire ce qui suit pour être certain que ta connexion est bien fermée :
Le problème est que tu gères tes exception, et c'est un très bonne chose une fois que l'application est finie, cependant, tant que tu es à l'étape de conception, et que tu sais que tu vas avoir des erreur, il vaut mieux mettre // devant le code JOptionPane.show... et faire un e.printStackTrace() au moins, tu vois d'où vient l'erreur.
cs_amounaups
Messages postés5Date d'inscriptionsamedi 16 février 2008StatutMembreDernière intervention 4 juin 2010 4 juin 2010 à 17:35
merci pour ta reponse julien c'est pa ça le preblem mais ca va comme même je vai l'appliquer mon actuel problem c'est comment faire la jointure entre deux table dans le code java
je veux inserer dans JTable en suite quand la ligne est saisie je click sur le boutton enregistrer il y a un msg qui s'affiche que l'enregitrement dans la BD est parfait par exemple
tu a compris
la table produit avec des attributs (designation,prix unitaire
detailcommande(quantite,Prixtotal unitaire, remise )
le tableau sur netbeans et le suivant:
Designation |Quantite| Prix unitaire |Prixtotal unitaire|remise
mnt je veux savoir l'insertion a la base de donnee a traver Jtable
j'ai pensé de faire une procedure de jointure entre les deux tables et au niveau java je tape le code
executeQuery ="insert into lenomdeprocedure value(...........
j'attend la reponse
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 4 juin 2010 à 18:11
Non ca ne marchera pas, tu ne peux pas faire un insert into avec executeQuery, la règle c'est si ton instruction modifie les tables, tu fais un executeUpdate et sinon un executeQuery.
Je ne vois pas quel est ton problème avec la jointure, la totalité du code n'a pas été affiché dans la fenetre, je ne vois donc pas l'erreur...
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 4 juin 2010 à 19:02
Tu n'es pas précis dans tes explications, je ne sais pas ce qu'il te manque.
Pour faire la jointure de tes deux tables avec la variable id
Resultset res = st.executeQuery("SELECT * FROM table1 table2 WHERE table1.id=table2.id");
Et après, il faut parcourir ta resultset
while(res.next()){
//Pour récuperer les valeurs
res.getString("NomColonne1");
res.getString("nomColonne2");
}