D'ou arrive mariaDB

soumiainfo Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   -  
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   -
coucou .bn je fais une app web avec java2e alors j'ai ajoutè le driver jdbc 5.14 correctement
j'ai creè la classe connexion correctement aussi mais j'ai une erreure
"You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'password=pass' at line 1"
ma syntax sql est juste voici ma query st.executeQuery("select * from responsable where usrname="+user+"and password="+pass+"");
alors j'arrive pas à trouver la solution .pliz help

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
("select * from responsable where usrname='"+user+"'
and password='"+pass+"'")



1
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
+1 pour jordane45.
Pour compléter, je voudrais réagir sur ce que tu dis : « ma syntaxe sql est juste ».
Justement, non.
Pour s'en assurer, il est intéressant de ne pas directement faire
st.executeQuery("select * from responsable where usrname="+user+"and password="+pass+"");
mais de le faire en deux lignes, en mettant la requête dans une variable.
L'intérêt, c'est de pouvoir plus facilement contrôler sa valeur exacte, soit en faisant du debug pas à pas, soit en l'affichant lorsqu'une exception survient (ou encore en la mettant dans un fichier de log, bref...)
requete = "select * from responsable where usrname='"+user+"' and password='"+pass+"'";
st.executeQuery(requete);

Ceci étant valable en java mais aussi en php ou n'importe quel langage.

En l'occurrence, là, ta requête ressemblait à quelque chose comme ça :
select * from responsable where usrname=robertand password=youpi

Tu aurais tout de suite vu qu'elle n'allait pas.

Xavier
0