dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 6 janv. 2009 à 10:26
Salut,
ben écoutes, suis le message d'erreur... Vas à la ligne 129 indiquée et regarde quelle variable est à NULL et essaie de résoudre à partir de là... non?
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 9 janv. 2009 à 19:17
Alors bon... Regarde le message d'erreur... Ca t'a pas aidé?
Column count doesn't match value count
Ca veut donc dire que tu essais de faire un Insert avec le mauvais nombre d'arguments!
Genre, une table avec 2 arguments, tu essais d'essayer d'insérer 3 arguments...
Il existe une méthode qui te permettra de récupérer ce que tu veux.
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
Vous n’avez pas trouvé la réponse que vous recherchez ?
massbbc
Messages postés126Date d'inscriptionjeudi 26 mai 2005StatutMembreDernière intervention24 février 20221 6 janv. 2009 à 16:35
Merci bocou pour ton aide.
Jai fait come tu me le demandé mais kan je click sur mon bouton ! les valeurs saisie sont affiché dans ma console mais ne figure pas dans ma base de donnée.
Voici un exemple:
referen1 produit1 gt1categorie1fournisseur1 adresse11111111115410000 Chèque bancaire
Exception
}
public AjoutP()
{
Container c=this.getContentPane();
c.setLayout(new GridLayout(3,5));
JPanel panelcentre=new JPanel(new GridLayout(9,2));
JPanel panelbas=new JPanel(new FlowLayout());
JLabel titre=new JLabel("",SwingConstants.RIGHT);
titre.setForeground(Color.red);
titre.setFont(new Font("TimesRoman",Font.ITALIC,25));
titre.setText("FIRST APPLICATION JAVA CORP.");
c.add(titre);
//zone de saisie pour le nom l'adresse et le telephone
txtrefP=new JTextField();
txtNProd=new JTextField();
txtqt=new JTextField();
txtNomFour=new JTextField();
txtcat=new JTextField();
txtadr=new JTextField();
txtTel=new JTextField();
txtmont=new JTextField();
//Object[] pai= {"Chèque bancaire", "Espèce","Carte bleu", "Chèques"};
//JComboBox txtmoy = new JComboBox(pai);
//ajout des etiquettes et des zones de saisie au panel
panelcentre.add(new JLabel("REFERENCE PRODUIT :",SwingConstants.RIGHT));
panelcentre.add(txtrefP);
panelcentre.add(new JLabel("NOM PRODUIT :",SwingConstants.RIGHT));
panelcentre.add(txtNProd);
panelcentre.add(new JLabel("QUANTITE :",SwingConstants.RIGHT));
panelcentre.add(txtqt);
panelcentre.add(new JLabel("CATEGORIE :",SwingConstants.RIGHT));
panelcentre.add(txtcat);
panelcentre.add(new JLabel("NOM FOURNISSEUR :",SwingConstants.RIGHT));
panelcentre.add(txtNomFour);
panelcentre.add(new JLabel("ADRESSE :",SwingConstants.RIGHT));
panelcentre.add(txtadr);
panelcentre.add(new JLabel("TELEPHONE :",SwingConstants.RIGHT));
panelcentre.add(txtTel);
panelcentre.add(new JLabel("MONTANT :",SwingConstants.RIGHT));
panelcentre.add(txtmont);
panelcentre.add(new JLabel("MOYEN :",SwingConstants.RIGHT));
panelcentre.add(txtmoy);
c.add(panelcentre);
//creer et ajoutter des boutons au panel de bas
btnAjout=new JButton("Ajouter");
btnEffacer=new JButton("Effacer");
btnFermer=new JButton("Fermer");
panelbas.add(btnAjout);
panelbas.add(btnEffacer);
panelbas.add(btnFermer);
c.add(panelbas);
//enregistrer le frame comme auditeur de bouton
btnAjout.addActionListener(this);
btnEffacer.addActionListener(this);
btnFermer.addActionListener(this);
this.setSize(550,600);
this.setTitle("AJOUT DE PRODUIT");
this.setVisible(true);
//creer une classe anonyme pour gerer la fermeture de la fenetre
this.addWindowListener(new WindowAdapter()
{
public void windoClosing(WindowEvent ev)
{
fermerFormulaire();
}
}
);
}//fin du constructeur
public void actionPerformed(ActionEvent e)
{
//déterminer si on cliqué sur un bouton
if(e.getSource()==btnAjout)
{
ajouterClient();
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 6 janv. 2009 à 17:22
Bon tu comprendras que je n'ai pas lu ce bloc de mots....
Si les valeurs que tu saisis ne vont pas dans la base de données, c'est que tu as sois une erreur de connexion à la BDD ou de ta requête. Tu as un message d'erreur?
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 7 janv. 2009 à 09:03
... Je refais un fois voir si ça va mieux.
As tu un message d'erreur dans ton programme?
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 7 janv. 2009 à 16:37
Affiche ta variable str dans laquelle il y a toute la requete "INSERT INTO................."
Et vérifie bien que cette requete soit bien formée, et à la limite, copies colles cette requette dans mysql query pour voir si ça passe.
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 8 janv. 2009 à 14:56
Et tu reçois ton JOptionPane avec marqué "ajouté" ???
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
massbbc
Messages postés126Date d'inscriptionjeudi 26 mai 2005StatutMembreDernière intervention24 février 20221 8 janv. 2009 à 15:52
Lorque j'utilise ma requête sans "JOptionPane" avec mysql, ma requête affiche bien "ajouté"!
Mais avec JOptionPane il met "exception" au lieu de "Ajouté"
Merci
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 8 janv. 2009 à 16:20
Bon...
tu seras d'accord avec moi, d'afficher "Exception", c'est un peu inutile....
Remplaces ton System.out.println("exception"); par
e.printStackTrace()
Et mets nous ce que ça te met comme erreur
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
massbbc
Messages postés126Date d'inscriptionjeudi 26 mai 2005StatutMembreDernière intervention24 février 20221 9 janv. 2009 à 19:02
Voici les erreurs:
java.sql.SQLException: Column count doesn't match value count at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3277)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1402)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1317)
at devlog.AjoutP.ajouterClient(AjoutP.java:128)
at devlog.AjoutP.actionPerformed(AjoutP.java:92)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
massbbc
Messages postés126Date d'inscriptionjeudi 26 mai 2005StatutMembreDernière intervention24 février 20221 13 janv. 2009 à 10:31
Ouf enfin jai reussi exactement ce que tu disais javais oublié de mentionné un champ dans ma rekête jai declaré 8 cham au lieu de 9 (champ oublié: moyPaiement).
}
public AjoutP()
{
Container c=this.getContentPane();
c.setLayout(new GridLayout(3,5));
JPanel panelcentre=new JPanel(new GridLayout(9,2));
JPanel panelbas=new JPanel(new FlowLayout());
JLabel titre=new JLabel("",SwingConstants.RIGHT);
titre.setForeground(Color.red);
titre.setFont(new Font("TimesRoman",Font.ITALIC,25));
titre.setText("FIRST APPLICATION JAVA CORP.");
c.add(titre);
//zone de saisie pour le nom l'adresse et le telephone
txtrefP=new JTextField();
txtNProd=new JTextField();
txtqt=new JTextField();
txtNomFour=new JTextField();
txtcat=new JTextField();
txtadr=new JTextField();
txtTel=new JTextField();
txtmont=new JTextField();
//Object[] pai= {"Chèque bancaire", "Espèce","Carte bleu", "Chèques"};
//JComboBox txtmoy = new JComboBox(pai);
//ajout des etiquettes et des zones de saisie au panel
panelcentre.add(new JLabel("REFERENCE PRODUIT :",SwingConstants.RIGHT));
panelcentre.add(txtrefP);
panelcentre.add(new JLabel("NOM PRODUIT :",SwingConstants.RIGHT));
panelcentre.add(txtNProd);
panelcentre.add(new JLabel("QUANTITE :",SwingConstants.RIGHT));
panelcentre.add(txtqt);
panelcentre.add(new JLabel("CATEGORIE :",SwingConstants.RIGHT));
panelcentre.add(txtcat);
panelcentre.add(new JLabel("NOM FOURNISSEUR :",SwingConstants.RIGHT));
panelcentre.add(txtNomFour);
panelcentre.add(new JLabel("ADRESSE :",SwingConstants.RIGHT));
panelcentre.add(txtadr);
panelcentre.add(new JLabel("TELEPHONE :",SwingConstants.RIGHT));
panelcentre.add(txtTel);
panelcentre.add(new JLabel("MONTANT :",SwingConstants.RIGHT));
panelcentre.add(txtmont);
panelcentre.add(new JLabel("MOYEN :",SwingConstants.RIGHT));
panelcentre.add(txtmoy);
c.add(panelcentre);
//creer et ajoutter des boutons au panel de bas
btnAjout=new JButton("Ajouter");
btnEffacer=new JButton("Effacer");
btnFermer=new JButton("Fermer");
panelbas.add(btnAjout);
panelbas.add(btnEffacer);
panelbas.add(btnFermer);
c.add(panelbas);
//enregistrer le frame comme auditeur de bouton
btnAjout.addActionListener(this);
btnEffacer.addActionListener(this);
btnFermer.addActionListener(this);
this.setSize(550,600);
this.setTitle("AJOUT DE PRODUIT");
this.setVisible(true);
//creer une classe anonyme pour gerer la fermeture de la fenetre
this.addWindowListener(new WindowAdapter()
{
public void windoClosing(WindowEvent ev)
{
fermerFormulaire();
}
}
);
}//fin du constructeur
public void actionPerformed(ActionEvent e)
{
//déterminer si on cliqué sur un bouton
if(e.getSource()==btnAjout)
{
ajouterClient();
massbbc
Messages postés126Date d'inscriptionjeudi 26 mai 2005StatutMembreDernière intervention24 février 20221 13 janv. 2009 à 10:36
Ouf enfin jai reussi exactement ce que tu disais javais oublié de mentionné un champ dans ma rekête jai declaré 8 cham au lieu de 9 (champ oublié: moyPaiement).