Pb insertion dans une bd via une fenêtre jdk

Fermé
nah01 Messages postés 75 Date d'inscription lundi 2 février 2009 Statut Membre Dernière intervention 2 novembre 2012 - 10 juil. 2009 à 12:45
nah01 Messages postés 75 Date d'inscription lundi 2 février 2009 Statut Membre Dernière intervention 2 novembre 2012 - 10 juil. 2009 à 14:08
Bonjour, je n'arrive pas à insérrer les données dans ma bd via une fenêtre jdk:
en effet, j'ai créer une fenêtre avec quatre zone de texte qui correspondent aux colonnes: Numcli, Nomcli, Prenomcli et Telcli de ma table "client" de la base de données "commandclient".
quand j'associe l'exécution de la commande à mon bouton "bajout" (bouton ajouter) j'obtient l'erreur suivante:

Cannot fine symbol
Symbol variable valNumcli
Location : class client1
NbIns= ins.executeUpdate(‘’insert into client(Numcli, Nomcli, Prenomcli, Telcli)
VALUES(‘ « +valNumcli+ »’, ...) et pareille pour les autres champs
Aussi à la ligne 127 j’ai :
Non-static variable this cannot be referenced from a static context
This.bajout.addActionListener(NbIns) ;
Enfin j’ai à la même ligne :
addActionListener(java.awt.event.Actionistener) in javax.swing.AbstractButton cannot be applied to (int)

voici le bout de code java:

.............code class client1..............avant..........

public String valNumcli(){return (String)this.textNumcli.getText();}
public String valNomcli(){return (String)this.textNomcli.getText();}
public String valPrencli(){return (String)this.textPrencli.getText();}
public String valTelcli(){return (String)this.textTelcli.getText();}

public static void main (String[] args)

{ String url="jdbc:odbc:comclient";
Connection cnx=null;
try
{
client1 fen = new client1();
fen.setVisible(true);

//chargement du driver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
cnx = DriverManager.getConnection(url);

// creation de la requete d'insertion
Statement ins = cnx.createStatement();
int NbIns ;
NbIns = ins.executeUpdate("INSERT INTO client(Numcli,Nomcli,Prenomcli,Telcli)VALUES('"+valNumcli+"','"+valNomcli+"','"+valPrencli+"','"+valTelcli+"')");

this.bajout.addActionListener(NbIns);
}
catch(Exception e)
{ System.out.println(e);
}
}
si vous avez besoin de tout le code faite moi signe!!!
merci à vous les gars et bonne prog à tous!
A voir également:

1 réponse

kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
10 juil. 2009 à 13:29
Bonjour,

Tout bêtement, dans ta requête SQL, de la manière dont c'est écrit tu fais appel à des variables. Or puisque ces variables n'existent pas (puisqu'il s'agit de méthode de classe que tu as appellé de cette manière), cela t'affiche ton erreur courante.

Bref, puisqu'il s'agit de méthode, n'oublie pas de mettre () après le nom de la méthode que tu appelles:

... VALUES('"+valNumcli()+"','"+valNomcli()+"','"+valPrencli()+"','"+valTelcli()+... 

0
nah01 Messages postés 75 Date d'inscription lundi 2 février 2009 Statut Membre Dernière intervention 2 novembre 2012 4
10 juil. 2009 à 14:08
merci beaucoup je vais de ce pas essayer!
0