D'ou arrive mariaDB

Fermé
soumiainfo Messages postés 19 Date d'inscription samedi 25 novembre 2017 Statut Membre Dernière intervention 23 décembre 2019 - 23 déc. 2019 à 21:58
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 31 déc. 2019 à 14:04
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 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
24 déc. 2019 à 01:05
("select * from responsable where usrname='"+user+"'
and password='"+pass+"'")



1
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié le 31 déc. 2019 à 14:06
+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