在executeQuery()中执行preparestatement后,没有将值插入到结果集中

时间:2012-12-09 08:54:03

标签: java jdbc resultset

我写了以下代码

PrepareStatement stmt=con.prepareStatement("select * from studentdetails where sname=?");
String snm=jTextField10.getText();
ps.setString(1,snm);
ResultSet rs=stmt.executeQuery();

我面临的问题是结果集是空的,我已经检查了数据库,我在gui中搜索的值是有效的。请告诉我migt是什么问题。

2 个答案:

答案 0 :(得分:0)

写下这个可能会对你有所帮助。

PrepareStatement stmt = con.prepareStatement("select * from studentdetails where sname=?");
String snm=jTextField10.getText();
stmt.setString(1,snm);
ResultSet rs=stmt.executeQuery();

答案 1 :(得分:0)

PreparedStatement stmt=con.prepareStatement("select * from studentdetails where sname=?");
String snm=jTextField10.getText();
stmt.setString(1,snm);
ResultSet rs=stmt.executeQuery();

试试上面的代码。代码中的所有内容都很好,唯一的问题是“PreparedStatement实例”和“PrepareStatement”。这是'PreparedStatement',你错过了那里的'd'。您已声明一个名为'stmt'的PreparedStatement实例,但您已使用另一个名为'ps'的值设置该值。

小注:

我不喜欢你给JTextField的名字。在OOP中,建议为实例,对象,方法,变量等提供有意义的名称