Budete muset odstranit query
argument z vašeho executeQuery
volání. Pokud zadáte parametr, dotaz bude proveden bez vazby jakýchkoli hodnot (viz Prohlášení
podrobnosti) – to je důvod, proč syntaxe (tj. ?
) je neplatné.
Proveďte dotaz takto:
ResultSet rst = st.executeQuery();
Jako vedlejší poznámka:Connection
byste měli vždy zabalit , PreparedStatement
a ResultSet
pomocí zkuste se zdroji blok, např.
try (ResultSet rst = st.executeQuery()) {
// read the results
}
Tímto způsobem si můžete být jisti ResultSet
bude zavřeno bez ohledu na to, co se stane.