我想使用文本字段“ inputAge”的输入来查找mysql中具有该年龄的用户,我应该如何在查询中使用“ int godine”。
Statement st = conn.createStatement();
int godine = Integer.parseInt(inputAge.getText());
ResultSet rs = st.executeQuery("select * from person where age = godine");
while (rs.next()) {
korisnik = new Korisnik(rs.getInt("id"), rs.getString("name"), rs.getInt("age"), rs.getString("adress"), rs.getInt("income"));
korisnik_lista.add(korisnik);
}
答案 0 :(得分:2)
您应该使用准备好的语句和绑定参数
int godine = Integer.parseInt(inputAge.getText());
String sqlStmt = "select * from person where age = ?";
prepStmt = conn.prepareStatement(sqlStmt);
prepStmt.setInt(1, godine);
ResultSet rs = prepStmt.executeQuery();
rs.close();
prepStmt.close();
答案 1 :(得分:0)
当用户scaisEdge回答时,您可以使用准备好的语句(建议使用)。
您还可以编写如下代码:
int godine = Integer.parseInt(inputAge.getText());
String sqlStmt = "select * from person where age = " + godine;
...
然后执行该语句将获得正确的结果,但当然不是动态的。