Requete ne fonctionne pas

208893 Messages postés 55 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 21 décembre 2010 - 18 oct. 2010 à 10:40
208893 Messages postés 55 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 21 décembre 2010 - 18 oct. 2010 à 16:04
bonjour mes amies;
j'ai un problème au niveau du requête sql
elle affiche un message d'erreur lorsque je l'exécute voila le code
savebtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){
String value1=tf1.getText();
String value2=tf2.getText();
String value3=tf3.getText();
String value4= tf4.getText();

String value5= tf5.getText();
    String value6=tf6.getText();
String value7=tf7.getText();
String value8=tf8.getText();
String value9=tf9.getText();
String value10=tf10.getText();
    String value11=tf11.getText();
   

Connection con = null;
String url = "jdbc:mysql://localhost:3306/";
String db = "teste_deux_form";
String driver = "com.mysql.jdbc.Driver";
String user = "root";
String pass = "";

try{
Class.forName(driver);
con = DriverManager.getConnection(url+db, user, pass);
PreparedStatement st;
if (c1.equals("oui") && (c2.equals("non"))) 
   st=con.prepareStatement("insert into evaluer(mat,affectation,sujet,date,lieu,heure,duree,formateur,doc,doc_test,eval) values(?,?,?,?,?,?,?,?,?,?,?)");
 
else { 
   
  st=con.prepareStatement("insert into non_eval(mat,affectation,sujet,date,lieu,heure,duree,formateur,doc,doc_test,eval) values(?,?,?,?,?,?,?,?,?,?,?)");
}//end else 
//}//end if 
st.setString(1,value1);
st.setString(2,value2);
st.setString(3,value3);
st.setString(4,value4);
st.setString(5,value5);
st.setString(6,value6);
st.setString(7, value7);
st.setString(8, value8);
st.setString(9, value9);
st.setString(10, value10);
st.setString(11, value11);
st.executeUpdate();
JOptionPane.showMessageDialog(p1,"Les données sont correctement insérés .");
con.close();
tf1.setText("");
tf2.setText("");
tf3.setText("");
tf4.setText("");
tf5.setText("");
tf6.setText("");
tf7.setText("");

tf8.setText("");
tf9.setText("");
tf10.setText("");
tf11.setText("");
}
catch(Exception e){
JOptionPane.showMessageDialog(p1,"Erreur dans la présentation des données!");
}
}
});

avec c1 et c2 sont des JRadioButton
JRadioButton c1 = new JRadioButton("oui");
JRadioButton c2 = new JRadioButton("non");

question: est ce que la requête est fausse ou il y a un autre problème?
merci d'avance

8 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
18 oct. 2010 à 14:47
Salut,

Il serait interessant d'avoir le message d'erreur.
Le contenu de l'exception si possible.

C'est peut etre un probleme de type de paramétre??

Pourquoi ne pas modifier que non_eval dans la requete?
à la place de la réécrire entièrement, c'est plus maintenable.
0
208893 Messages postés 55 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 21 décembre 2010 2
18 oct. 2010 à 14:55
salut;
voila tous le code
package form;

import java.io.*;
import java.awt.*;

import javax.swing.*;
import javax.swing.border.Border;

import java.awt.event.*;
import java.sql.*;
import java.util.*;

class evaluation {
JFrame f;
JPanel p1;
JLabel l1, l2, l3, l4,l5,l6,l7,l8,l9,l10,l11,lp,lt;
JTextField tf1,tf2,tf3,tf4,tf5,tf6,tf7,tf8,tf9,tf10,tf11;
//JComboBox tf3=null;
JButton savebtn,resetbtn,test ;

JRadioButton c1 = new JRadioButton("oui");
JRadioButton c2 = new JRadioButton("non");
ButtonGroup group = new ButtonGroup();
evaluation(){

f=new JFrame("Evaluation");
p1=new JPanel();
l1=new JLabel("Matricule :");
l2=new JLabel("affectation :");
l3=new JLabel("sujet :");
l4=new JLabel("date:");
l5=new JLabel("lieu :");
l6=new JLabel("heure :");
l7=new JLabel("duree:");
l8=new JLabel("formateur");
l9=new JLabel ("document");
l10=new JLabel("document de test");
lp=new JLabel("%");
lt=new JLabel("Test concluant");
l11=new JLabel("Evaluation");
l11.setHorizontalAlignment(SwingConstants.LEFT);


tf1=new JTextField(12);
tf2=new JTextField(12);
tf3=new JTextField(12);
tf4=new JTextField(12);
tf5=new JTextField(12);
tf6=new JTextField(12);
tf7=new JTextField(12);
tf8=new JTextField(12);
tf9=new JTextField(12);
tf10=new JTextField(12);
tf11=new JTextField(12);
group.add(c1);
group.add(c2); 
c1.setSelected(true);

savebtn=new JButton(" Ajouter ");
resetbtn=new JButton(" Annuler");
test=new JButton(" Afficher");

p1.setLayout(null);
p1.setBorder(BorderFactory.createEtchedBorder());

addComponent(p1, l1, 5,17,106,18);
addComponent(p1, l2, 5,47,106,18);
addComponent(p1, l3, 5,77,106,18);
addComponent(p1, l4, 5,107,106,18);
addComponent(p1, l5, 5,137,106,18);
addComponent(p1, l6, 5,167,106,18);
addComponent(p1, l7, 5,197,106,18);
addComponent(p1, l8, 5,227,106,18);
addComponent(p1, l9, 5,257,106,18);
addComponent(p1, l10, 5,287,106,18);
addComponent(p1, l11, 5,317,106,18);
addComponent(p1, lt, 5,347,106,18);


addComponent(p1, tf1, 110,17,100,22);
addComponent(p1, tf2, 110,47,100,22);
addComponent(p1, tf3, 110,77,150,22);
addComponent(p1, tf4, 110,107,100,22);
addComponent(p1, tf5, 110,137,100,22);
addComponent(p1, tf6, 110,167,100,22);
addComponent(p1, tf7, 110,197,100,22);
addComponent(p1, tf8, 110,227,100,22);
addComponent(p1, tf9, 110,257,100,22);
addComponent(p1, tf10, 110,287,100,22);
addComponent(p1, tf11, 110,317,70,22);
addComponent(p1, lp,190,317,70,22);
addComponent(p1, c1, 110,347,50,22);
addComponent(p1, c2, 190,347,50,22);

addComponent(p1, test, 40,380,89,28);
addComponent(p1, resetbtn, 140,380,89,28);
addComponent(p1, savebtn, 240,380,89,28);







/*
 
tf1.addKeyListener(new KeyAdapter() {
    public void keyReleased(KeyEvent e) {
    	if( e.getKeyCode() == KeyEvent.VK_ENTER ){
String value = tf1.getText();
//String value1 = tf3.getToolTipText();


Connection con = null;
String url = "jdbc:mysql://localhost:3306/";
String db = "teste_deux_form";
String driver = "com.mysql.jdbc.Driver";
String user = "root";
String pass = "";


try{
Class.forName(driver);
con = DriverManager.getConnection(url+db, user, pass);
PreparedStatement st=con.prepareStatement("select * from plan_for where mat_ouv='"+tf1.getText()+"'");
ResultSet res=st.executeQuery();


while(res.next()){

 tf3.setText(res.getString(3));
 tf1.setText(Integer.toString(res.getInt(1)));
 tf2.setText(Integer.toString(res.getInt(2)));

 tf4.setText(res.getString(4));
 tf5.setText(res.getString(5));
 tf6.setText(Integer.toString(res.getInt(6)));
 tf7.setText(Integer.toString(res.getInt(7)));
 tf8.setText(res.getString(8));
 tf9.setText(res.getString(9));
 tf10.setText(res.getString(10));


 }
 con.close();
 }
 catch(Exception ee)
 {
 JOptionPane.showMessageDialog(p1,"Ce matricule n'existe pas");
 }
}
           }
});
*/
test.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){

String value=tf1.getText();
String value1=tf3.getText();
Connection con = null;
 String url = "jdbc:mysql://localhost:3306/";
 String db = "teste_deux_form";
 String driver = "com.mysql.jdbc.Driver";
 String user = "root";
 String pass = "";
try{
Class.forName(driver);
con = DriverManager.getConnection(url+db, user, pass);
PreparedStatement st=con.prepareStatement("select * from plan_for where mat_ouv=? and sujet=? ");
st.setString(1,value);
st.setString(2,value1);

ResultSet res=st.executeQuery();
res.next();
tf3.setText(res.getString(3));
 tf1.setText(Integer.toString(res.getInt(1)));
 tf2.setText(Integer.toString(res.getInt(2)));

 tf4.setText(res.getString(4));
 tf5.setText(res.getString(5));
 tf6.setText(Integer.toString(res.getInt(6)));
 tf7.setText(Integer.toString(res.getInt(7)));
 tf8.setText(res.getString(8));
 tf9.setText(res.getString(9));
 tf10.setText(res.getString(10));
con.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(p1,"Ce code n'existe pas");
}
}
});
resetbtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){
tf1.setText("");
tf2.setText("");
tf3.setText("");
tf4.setText("");
tf5.setText("");
tf6.setText("");
tf7.setText("");
tf8.setText("");
tf9.setText("");
tf10.setText("");
tf11.setText("");

}
});
savebtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){
String value1=tf1.getText();
String value2=tf2.getText();
String value3=tf3.getText();
String value4= tf4.getText();

String value5= tf5.getText();
    String value6=tf6.getText();
String value7=tf7.getText();
String value8=tf8.getText();
String value9=tf9.getText();
String value10=tf10.getText();
    String value11=tf11.getText();
   

Connection con = null;
String url = "jdbc:mysql://localhost:3306/";
String db = "teste_deux_form";
String driver = "com.mysql.jdbc.Driver";
String user = "root";
String pass = "";

try{
Class.forName(driver);
con = DriverManager.getConnection(url+db, user, pass);
PreparedStatement st;

if (c1. isSelected() && (c2.isEnabled())) 
   st=con.prepareStatement("insert into evaluer(mat,affectation,sujet,date,lieu,heure,duree,formateur,doc,doc_test,eval) values(?,?,?,?,?,?,?,?,?,?,?)");
 
else { 
   
  st=con.prepareStatement("insert into non_eval(mat,affectation,sujet,date,lieu,heure,duree,formateur,doc,doc_test,eval) values(?,?,?,?,?,?,?,?,?,?,?)");
}//end else 
//}//end if 
st.setString(1,value1);
st.setString(2,value2);
st.setString(3,value3);
st.setString(4,value4);
st.setString(5,value5);
st.setString(6,value6);
st.setString(7, value7);
st.setString(8, value8);
st.setString(9, value9);
st.setString(10, value10);
st.setString(11, value11);
st.executeUpdate();
JOptionPane.showMessageDialog(p1,"Les données sont correctement insérés .");
con.close();
tf1.setText("");
tf2.setText("");
tf3.setText("");
tf4.setText("");
tf5.setText("");
tf6.setText("");
tf7.setText("");

tf8.setText("");
tf9.setText("");
tf10.setText("");
tf11.setText("");
}
catch(Exception e){
JOptionPane.showMessageDialog(p1,"Erreur dans la présentation des données!");
}
}
});
}

private void addComponent(Container container,Component c,int x,int y,int width,int height) {
    c.setBounds(x,y,width,height);
    container.add(c);
} //end of addComponent()
void dis()
{
f.getContentPane().add(p1);
f.setSize(400,600);
f.setVisible(true);
f.setResizable(true);
}
public static void main(String z[]){
evaluation pro=new evaluation();
pro.dis();
}

}

le message d'erreur est;
JOptionPane.showMessageDialog(p1,"Erreur dans la présentation des données!");

j'aime que si les données est vrai donc ils ont enregistrer dans la table evaluer et si non ils ont enregistrer dans la table non_eval
merci d'avance
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
18 oct. 2010 à 15:22
tu as rien compris

Je veux e.Message
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
18 oct. 2010 à 15:44
Je veux le contenu de e.Message !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
208893 Messages postés 55 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 21 décembre 2010 2
18 oct. 2010 à 15:50
désolé j'ai compries
voila le message
"unknown column 'eval' in 'field list'"
0
208893 Messages postés 55 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 21 décembre 2010 2
18 oct. 2010 à 15:57
merci beaucoup ça marche bien
merci
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
18 oct. 2010 à 15:57
C'est deja mieux

eval n'est pas une colonne de ta base de données peut etre?
Ou elle est mal remplie.
0
208893 Messages postés 55 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 21 décembre 2010 2
18 oct. 2010 à 16:04
est ce que tu peux m'aider à résoudre cet problème
j'aime qu'après que je clique sur non elle lui afficher le même données mais avec le champs date et le champ evaluation vide pour que remplir une autre fois, de tel façons lorsque je clique sur non une nouvelle fenêtre s'ouvre. et merci d'avance
0
Rejoignez-nous