Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment utiliser l'instruction préparée pour la requête select en Java ?

Vous devez utiliser :

preparedStatement.executeQuery();

au lieu de

preparedStatement.executeQuery(login);

lorsque vous transmettez une chaîne à executeQuery() que la requête est exécutée littéralement et donc le ? est envoyé à la base de données qui crée alors l'erreur. En transmettant la chaîne de requête, vous n'exécutez pas l'instruction préparée "en cache" pour laquelle vous avez transmis les valeurs.