我是网站和Java的新手。 这是我的问题: 我试图让一个简单的查询工作,但没有任何反应。
con = DriverManager.getConnection(host, uName, uPass);
stmt = con.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE );
} catch (SQLException ex) {
JOptionPane.showMessageDialog(this,ex.getMessage());
}
try {
String nome = ricercaetichetta.getText();
rs = stmt.executeQuery("SELECT * From Giocatori Where Nome='" + nome + "'");
while(rs.next()) {
String nomeric = rs.getString("Nome");
risultati.setText("\n"+nomeric);
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(this,ex.getMessage());
}
}
我有一个JTextField,您可以在其中为WHERE子句编写输入。 然后我想在JTextArea中写我的结果。 当我运行该程序时,它只是没有写任何东西而停止....
编辑:阅读完评论后,我尝试了这个。它似乎有效,但是敏感的情况......我将看看如何解决这个问题。非常感谢你。 如果此代码存在问题,请告诉我,我正在学习。
try {
String SQL ="SELECT * From Giocatori Where Nome=?";
PreparedStatement preparedStatement = con.prepareStatement(SQL);
String nome= ricercaetichetta.getText();
preparedStatement.setString(1, nome);
System.out.println(nome); //try
rs = preparedStatement.executeQuery();
while (rs.next()) {
String firstName = rs.getString("Nome");
System.out.println(preparedStatement);
risultati.append(firstName+"\n");
}
}
catch (SQLException ex) {
JOptionPane.showMessageDialog(this,ex.getMessage());
}
}