Bonjour,
j'ai écrit un petit programme de test qui permet d'insérer des données dans un BD Mysql via java et ça marche bien.
Voici le prgme:
Mon souci ,c'est d'écrire (ajouter une fonction à cette classe) une fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 import java.net.*; import java.sql.*; import java.io.*; public class Inscription{ public static String UserBD = "root"; public static String UserPasswordBD =""; public static String PathAccessBD ="jdbc:odbc:manageuser"; public Inscription(){ try{ Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.print("salut!! Ir justin g vous informe que le chargement du pilote a recu " + "\n"); } catch(ClassNotFoundException e){ System.out.print("erreur lors du chargement du pilote"); } } public static void main(String args[])throws SQLException, ClassNotFoundException{ Inscription charpilot=new Inscription(); try{ Connection connex = DriverManager.getConnection(PathAccessBD,UserBD,UserPasswordBD); Statement state = connex.createStatement(); String requete =" Insert into client values('','kazadi','justin','27','kabinda 115 commune/kin','00243813486120','002438953880','justkazadi@gmail.com','Célibataire','Bonjour,je souhaite faie une reservation')"; int res = state.executeUpdate(requete); System.out.println("le nbre est de:" +res); }catch(Exception e){ System.out.println("\n" + "Erreur!!!" + e.getMessage()); } } }
(qui sera un web service pour gérer l'enregistrement des utilisateurs sur une plate-forme.)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Enregistrer(){}
Et c'est là que j'ai cette erreur:
Si je comprends bien, le compilateur traite les paramètres de la fonction dans la requête comme les noms des colonnes et non comme valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Exception in thread "main" java.sql.SQLException: [MySQL][ODBC 5.1 Driver][mysqld-5.0.45-community-nt]Unknown column 'nm' in 'field list'
Voici mon code:
merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 import java.net.*; import java.sql.*; import java.io.*; public class Inscription{ public static String UserBD = "root"; public static String UserPasswordBD =""; public static String PathAccessBD ="jdbc:odbc:manageuser"; public Inscription(){ try{ Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.print("salut!! Ir justin g vous informe que le chargement du pilote a recu " + "\n"); } catch(ClassNotFoundException e){ System.out.print("erreur lors du chargement du pilote"); } } public int Enregistrer(String nm, String pr, String ag, String adress, String teleph1, String teleph2, String mail, String civilit, String messag)throws SQLException, ClassNotFoundException{ int ok_inscription=1; int nok_inscription=0; Connection connex=null; try{ connex = DriverManager.getConnection(PathAccessBD,UserBD,UserPasswordBD); }catch(Exception excep){ System.out.println("\n" + "Erreur!!!" + excep.getMessage()); } Statement state = connex.createStatement(); String requete ="Insert into client (idclient,nom,prenom,age,adresse,telephone1,telephone2,email,civilite,message) values('',nm,pr,ag,adress,teleph1,teleph2,mail,civilit,messag)"; int res = state.executeUpdate(requete); if(res==1){ return ok_inscription; } else{ return nok_inscription; } } public static void main(String args[])throws SQLException, ClassNotFoundException{ int resultat; String a = "kabedi"; String b = "marthe"; String c = "32"; String d = "Barumbu 134"; String e = "0897654332"; String f = "00243856743452"; String g = "kabedi.marthe@gmail.com"; String h = "Mariée"; String i ="Hello word"; Inscription my_inscript=new Inscription(); resultat = my_inscript.Enregistrer(a,b,c,d,e,f,g,h,i); System.out.println("Voici le resultat:" + resultat); } }
Partager