Я создал много функций для моей схемы на Postgres. Теперь я хочу, чтобы они вызывались динамически в моем Java-приложении.
Мне нужно заменить executeQuery с prepareStatement.
Какой правильный путь?
try (Connection con = conn.getConnection()) {
try (Statement stmt = con.createStatement()) {
try (ResultSet rs = stmt.executeQuery("select myschema." + myfunction1 + "();")) {
if (rs.next()) {
//some code
}
}
}
}
// What I want...
try (Connection con = conn.getConnection()) {
try (PreparedStatement ps = con.prepareStatement("select myschema.?()")) {
ps.setString(1, myfunction1);
}
}
Мне нужно получить «select myschema.myfunction1 ()», но таким образом я, очевидно, получаю «select myschema.'myfunction1 '()», которая выдает мне ошибку.