Например, этот запрос похож на двух языках:
"SELECT District FROM City WHERE Name=?"
Но в JAVA следующий запрос не работает:
"SELECT District FROM City WHERE Name=:name"
Есть ли более дружественный способ, чем использование набора точек допроса в JAVA?
JDBC PreparedStatement
является аналогичный (но нет идентичный к) PHP PreparedStatement
при использовании параметров связывания JDBC (parameterIndex
) является int
, Увидеть Использование подготовленных заявлений и PreparedStatement
Javadoc. Если у вас есть Connection conn
и String name
, это может быть сделано с чем-то вроде
String sql = "SELECT District FROM City WHERE Name=?";
try (PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setString(1, name);
try (ResultSet rs = ps.executeQuery()) {
while (rs.next()) {
System.out.println(rs.getString("District"));
}
}
} catch (SQLException e) {
e.printStackTrace();
}
Других решений пока нет …