微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java数据库连接检索

我使用下面的代码以摆动形式显示我的数据库中的记录.但是,当我点击按钮时,它只显示数据库的第一条记录(数据库中的表有5条记录)

private void btnnextActionPerformed(java.awt.event.ActionEvent evt) {                                        
    try
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con=DriverManager.getConnection("jdbc:odbc:StudentDetails");
            Statement stm=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
            ResultSet rs=stm.executeQuery("Select * from NurseryStDetails");

                if(rs.first())
                {
                    txtstID.setText(rs.getString(1));
                    txtname.setText(rs.getString(2));
                    txtaddress.setText(rs.getString(3));
//                    int i=rs.getInt(4);
//                    String s=String.valueOf(i);
//                    txtage.setText(rs.getString(s));
//                    int j=rs.getInt(5);
//                    String t=String.valueOf(j);
                    txtage.setText(rs.getString(4));
                    txttelephone.setText(rs.getString(5));
                    txtgNIC.setText(rs.getString(6));
                    txtgname.setText(rs.getString(7));
                }
            }
        catch(Exception ex)
            {
                System.out.println("Exception caught"+ex);
            }

    }   

解决方法:

可以将JDBC ResultSet对象指向正在执行的查询的结果行的开始之前的位置.
一个rs.next()使它指向返回的第一行.对rs.next()的后续调用将它在结果行中向前移动.
因此,要显示所有结果,请使用该概念

while(rs.next()){
  //use rs to get the details of the current row.
}

如果下一行存在,则rs.next()返回true.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐