Pb requete sql update avec jdbc
Résolu
nickybutterfly
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
nickybutterfly Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
nickybutterfly Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous,
Je suis novice dans jdbc, donc je vous demanderais un peu d'indulgence ;)
Mon souci est que (avec eclipse) je recois une erreur d'execution (erreur de syntaxe dans la requete sql ) sur une ligne de code de mon programme java avec jdbc et serveur MySQL. Le souci est que lorsque j'execute la meme requete dans la fenetre de commandes MySQL, ma base de donnée est alimentée naturellement. Donc j'ai beau cherché sur tous les forums et tutoriels je n'ai tjs rien pu trouver pour m'aider.
voici la portion de code qui provoque l'erreur (sachant que tout le reste es nickel) vu qu'en l'enlevant, ou bien meme en la remplacant par une requete 'INSERT' par exemple, ca marche.
//...
Statement st=null;
try{
st=dbcon.obtenirStatement();
st.executeUpdate("UPDATE profil_membre" // la ligne provoquant l'erreur
+"SET password='"+password+"', nom='"+nom+"',"
+" prenom='"+prenom+"',date_de_naissance='"+date_de_naissance+"', ville='"+ville+"',"
+"pays='"+pays+"',"mail='"+mail+"'"
+"WHERE login='"+login+"'");
}
finally{if(st!=null)dbcon.FermerConnexion(st);}
return profil;
}//fin inscription
Je suis novice dans jdbc, donc je vous demanderais un peu d'indulgence ;)
Mon souci est que (avec eclipse) je recois une erreur d'execution (erreur de syntaxe dans la requete sql ) sur une ligne de code de mon programme java avec jdbc et serveur MySQL. Le souci est que lorsque j'execute la meme requete dans la fenetre de commandes MySQL, ma base de donnée est alimentée naturellement. Donc j'ai beau cherché sur tous les forums et tutoriels je n'ai tjs rien pu trouver pour m'aider.
voici la portion de code qui provoque l'erreur (sachant que tout le reste es nickel) vu qu'en l'enlevant, ou bien meme en la remplacant par une requete 'INSERT' par exemple, ca marche.
//...
Statement st=null;
try{
st=dbcon.obtenirStatement();
st.executeUpdate("UPDATE profil_membre" // la ligne provoquant l'erreur
+"SET password='"+password+"', nom='"+nom+"',"
+" prenom='"+prenom+"',date_de_naissance='"+date_de_naissance+"', ville='"+ville+"',"
+"pays='"+pays+"',"mail='"+mail+"'"
+"WHERE login='"+login+"'");
}
finally{if(st!=null)dbcon.FermerConnexion(st);}
return profil;
}//fin inscription
A voir également:
- Pb requete sql update avec jdbc
- Windows update bloqué - Guide
- Winget update - Guide
- Asus live update - Télécharger - Utilitaires
- Wsus offline update - Télécharger - Systèmes d'exploitation
- Nettoyage windows update - Guide
7 réponses
essayes de la maniere suivante :
Statement st=null;
try{
st=dbcon.obtenirStatement();
st.executeUpdate("UPDATE profil_membre "
+"SET passord=password "+", "
+"nom=nom "+","
+"prenom=prenom "+","
+date_de_naissance=date_de_naissance "+", "
+"ville=ville "+","
+"pays=pays "+","
+mail=mail"
"
+"WHERE login=login");
}
finally{if(st!=null)dbcon.FermerConnexion(st);}
return profil;
}//fin inscription
Statement st=null;
try{
st=dbcon.obtenirStatement();
st.executeUpdate("UPDATE profil_membre "
+"SET passord=password "+", "
+"nom=nom "+","
+"prenom=prenom "+","
+date_de_naissance=date_de_naissance "+", "
+"ville=ville "+","
+"pays=pays "+","
+mail=mail"
"
+"WHERE login=login");
}
finally{if(st!=null)dbcon.FermerConnexion(st);}
return profil;
}//fin inscription
essayes de la maniere suivante :
Statement st=null;
try{
st=dbcon.obtenirStatement();
st.executeUpdate("UPDATE profil_membre "
+"SET passord=password "+", "
+"nom=nom "+","
+"prenom=prenom "+","
+date_de_naissance=date_de_naissance "+", "
+"ville=ville "+","
+"pays=pays "+","
+"mail=mail"
"
+"WHERE login=login");
}
finally{if(st!=null)dbcon.FermerConnexion(st);}
return profil;
}//fin inscription
Statement st=null;
try{
st=dbcon.obtenirStatement();
st.executeUpdate("UPDATE profil_membre "
+"SET passord=password "+", "
+"nom=nom "+","
+"prenom=prenom "+","
+date_de_naissance=date_de_naissance "+", "
+"ville=ville "+","
+"pays=pays "+","
+"mail=mail"
"
+"WHERE login=login");
}
finally{if(st!=null)dbcon.FermerConnexion(st);}
return profil;
}//fin inscription
inspires toi de ce qui suit en utilisant PreparedStatement.
public void getConnection() {
try {
conn = DriverManager.getConnection("jdbc:odbc:Contactmdb"); // Contactmdb est different pour toi
} catch (SQLException se) { }
}
PreparedStatement pstmt = conn.prepareStatement("UPDATE AdressBook " +
"SET Title= ?," +
"Name= ? , " +
"TypePhone= ? , " +
"Addr1= ? , " +
"Addr2= ? , " +
"City= ? , " +
"State= ? , " +
"Zip= ? , " +
"Phone = ? " +
" WHERE Name=? and TypePhone=?");
pstmt.setString(1, c.getTitle());
pstmt.setString(2, c.getName());
pstmt.setString(3, c.getTypeph());
pstmt.setString(4, c.getAddr1());
pstmt.setString(5, c.getAddr2());
pstmt.setString(6, c.getCity());
pstmt.setString(7, c.getState());
pstmt.setString(8, c.getZip());
pstmt.setString(9, c.getPhone());
pstmt.setString(10, c.getName());
pstmt.setString(11, c.getTypeph());
pstmt.executeUpdate();
salut Tahar
public void getConnection() {
try {
conn = DriverManager.getConnection("jdbc:odbc:Contactmdb"); // Contactmdb est different pour toi
} catch (SQLException se) { }
}
PreparedStatement pstmt = conn.prepareStatement("UPDATE AdressBook " +
"SET Title= ?," +
"Name= ? , " +
"TypePhone= ? , " +
"Addr1= ? , " +
"Addr2= ? , " +
"City= ? , " +
"State= ? , " +
"Zip= ? , " +
"Phone = ? " +
" WHERE Name=? and TypePhone=?");
pstmt.setString(1, c.getTitle());
pstmt.setString(2, c.getName());
pstmt.setString(3, c.getTypeph());
pstmt.setString(4, c.getAddr1());
pstmt.setString(5, c.getAddr2());
pstmt.setString(6, c.getCity());
pstmt.setString(7, c.getState());
pstmt.setString(8, c.getZip());
pstmt.setString(9, c.getPhone());
pstmt.setString(10, c.getName());
pstmt.setString(11, c.getTypeph());
pstmt.executeUpdate();
salut Tahar
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut tsou, tout d'abord merci de ta réponse.
En fait ce que je mets entre '"++"' sont des variables java qui contiennent les informations saisies par l'utilisateur (elles sont deja remplies), et ce que tu me proposes affectera les chaines de caracteres () a mes variables MySQL.
A part ca j'ai aussi essayé avec ta syntaxe mais ca marche tjs pas meme erreur (en affectant des valeurs quelconques aux variables) : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 'zefze', nom='gregt',prenom='', date_de_naissance='hytjht', ville='bdfdfg', pa' at line 1
Je suis preneur de toute autre suggestion ;)
En fait ce que je mets entre '"++"' sont des variables java qui contiennent les informations saisies par l'utilisateur (elles sont deja remplies), et ce que tu me proposes affectera les chaines de caracteres () a mes variables MySQL.
A part ca j'ai aussi essayé avec ta syntaxe mais ca marche tjs pas meme erreur (en affectant des valeurs quelconques aux variables) : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 'zefze', nom='gregt',prenom='', date_de_naissance='hytjht', ville='bdfdfg', pa' at line 1
Je suis preneur de toute autre suggestion ;)