Je moet gebruiken:
preparedStatement.executeQuery();
in plaats van
preparedStatement.executeQuery(login);
wanneer je een string doorgeeft aan executeQuery()
dat query wordt letterlijk uitgevoerd en dus de ?
wordt verzonden naar de database die vervolgens de fout maakt. Door de queryreeks door te geven, voert u de voorbereide instructie "in de cache" waarvoor u de waarden hebt doorgegeven niet uit.