Het is niet nodig om de SQL-instructievariabele door te geven aan executeQuery
voor PreparedStatement
. Dat is het belangrijkste probleem in jouw geval.
PreparedStatement preparedStatement = connection.prepareStatement(selectSQL);
preparedStatement.setString(1, lexiconType);
preparedStatement.setString(2, lemma);
// error is in the following statement
ResultSet rs = preparedStatement.executeQuery(selectSQL);
Terwijl u reset de sql die moet worden uitgevoerd, wordt de instructie niet herkend als een voorbereide instructie, maar een instantie van de bovenliggende Statement
die op zoek is naar geldige invoer tussen aanhalingstekens voor steken enz. Die niet aanwezig zijn. En vandaar de syntaxisfout.
Wijzigen :
ResultSet rs = preparedStatement.executeQuery(selectSQL);
Naar :
ResultSet rs = preparedStatement.executeQuery();
En het zou moeten werken.
Verwijzen :