D'ou arrive mariaDB

Signaler
Messages postés
19
Date d'inscription
samedi 25 novembre 2017
Statut
Membre
Dernière intervention
23 décembre 2019
-
Reivax962
Messages postés
3553
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
23 janvier 2020
-
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

Messages postés
27371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 janvier 2020
2 053
("select * from responsable where usrname='"+user+"'
and password='"+pass+"'")



Messages postés
3553
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
23 janvier 2020
925
+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