【问题标题】:Read all result one by one一个一个地读取所有结果
【发布时间】:2014-08-22 22:50:49
【问题描述】:

我为下一个按钮编写此代码。当我单击时,我只从表中获得第一行。帮助我如何一一获取所有行?

   public void next(){
      try{
          String Url = "Jdbc:Odbc:DirDSN";
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          Connection con = DriverManager.getConnection(Url,"sa","mysql");
          //        Statement st = con.createStatement();
          String sql = "SELECT * FROM PersonInformation";
          PreparedStatement pstmt = con.prepareStatement(sql,
               ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
          ResultSet rs = pstmt.executeQuery();
          if(rs.next()) {
              String name = rs.getString("First_Name");
              String lName = rs.getString("Last_Name");
              String add = rs.getString ("Address");
              String em = rs.getString("Email_Id");
              String cell = rs.getString("cell#");
              //        System.out.println("name"+ name+ "lastName"+lName);
              //        set();
              jTextField2.setText(name);
              jTextField3.setText(lName);
              jTextField4.setText(add);
              jTextField5.setText(em);
              jTextField10.setText(cell);
          } else {
              JOptionPane.showMessageDialog(null,"no next record available");
          }
       } catch(Exception sqlEx) {
            System.out.println(sqlEx);
       }
   }

请告诉我如何以一行一行的形式从数据库中创建的表中获取数据。我为下一个按钮编写此代码,但我通过单击下一个按钮仅获得表的第一条记录,我希望如果我单击下一个按钮,它应该在 gui.guide me plz 中一个接一个地显示所有记录

【问题讨论】:

  • 继续调用rs.next()获取下一条记录,直到用完为止。
  • while (rs.next ()) {}
  • down_votes 可能是因为您在此处发布的疯狂混乱(意思是您的原始代码),(现在)这个问题不是更好......
  • Connection、PreparedStatement 和 ResultSet 在 finally(try - catch - finally) 块中应该是 close() 否则会在 JVM 使用的内存中停留(增加)

标签: java string swing jdbc jtextfield


【解决方案1】:

你做错了。

  1. 将循环从 if 更改为 while
  2. 您正在填充JTextField,当循环结束时,您将只看到最后一个值,因为其他值已覆盖。将其更改为 System.out.println(); 并相应地调整您的 GUI

【讨论】:

  • 我是java新手,如果你能提供我一点代码,我将不胜感激
  • 你到底想做什么?如果您想填充所有结果,请尝试在此处使用 JTable 相同示例 cs.cf.ac.uk/Dave/HCI/HCI_Handout_CALLER/node167.html
  • 我只想通过单击下一步按钮将我的数据库的表记录一一显示到我的应用程序 Gui 中。
猜你喜欢
  • 2016-12-05
  • 1970-01-01
  • 1970-01-01
  • 2021-09-09
  • 2013-03-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-10
  • 2017-01-19
相关资源
最近更新 更多