把一条记录的结果先存放在变量中。反复使用变量就可以了。你的错误信息时说:结果集中column 1的数据不能反复读取。

解决方案 »

  1.   

    一次读出:  public static Vector getRooms(String r_dep) throws SQLException {
        Vector vect = new Vector();
        Connection conn = Conn.getConnection();
        PreparedStatement pstmt = null;
        ResultSet rset = null;
        String sql = "select * from per_room where r_dep = ?";
        try {
          pstmt = conn.prepareStatement(sql);
          pstmt.setString(1, r_dep);
          rset = pstmt.executeQuery();
          while (rset.next()) {
            Room _room = new Room();
            _room.setID(rset.getInt("ID"));
            _room.setR_num(rset.getString("r_num"));
            _room.setR_name(rset.getString("r_name"));
            _room.setR_addr(rset.getString("r_addr"));
            _room.setR_capacity(rset.getString("r_capacity"));
            _room.setR_equipment(rset.getString("r_equipment"));
            _room.setR_description(rset.getString("r_description"));
            _room.setR_note(rset.getString("r_note"));
            _room.setR_dep(rset.getString("r_dep"));
            vect.add(_room);
          }
          return vect;
        }
        catch (Exception e) {
          Debug.write(e);
          return null;
        }
        finally {
          Conn.close(rset, pstmt, conn);
        }
      }//Room为一bean
      

  2.   

    显示然后就显示返回的Vector 内容就的了
      

  3.   

    我已经解决了,原来sql的jdbc在取数据的时候只能按字段顺序取出。我晕~~~~~~~
    哈哈。感谢各位。马上给分