【问题标题】:java while (resultset.next()) does not return all data in the same columnjava while (resultset.next()) 不会返回同一列中的所有数据
【发布时间】:2020-11-13 09:15:07
【问题描述】:

我需要你的帮助。我希望结果集获取 member_code 列中的所有数据,但它只获取 1 个数据。如何使用循环获取 member_code 中的所有数据?这是我的代码:

    public String membercode() throws SQLException{
        String member="";
        
        String sql = "SELECT member_code FROM member";
            java.sql.Connection conn = (Connection) koneksi.config();
            java.sql.Statement stm = conn.createStatement();
            java.sql.ResultSet res = stm.executeQuery(sql);
            while(res.next()) { 

                 member = res.getString("member_code");
                 
            }
            return member;
}

【问题讨论】:

  • 您在循环中重新分配 res.getString("member_code") 的值。所以成员变量取最后一个值。尝试使用 List 代替

标签: java sql resultset


【解决方案1】:

您需要组装并返回一个“列表”。例如:

public List<String> membercode() throws SQLException{
    List<String> members = new ArrayList<String>();
    
    String sql = "SELECT member_code FROM member";
        java.sql.Connection conn = (Connection) koneksi.config();
        java.sql.Statement stm = conn.createStatement();
        java.sql.ResultSet res = stm.executeQuery(sql);
        while(res.next()) { 

             member = res.getString("member_code");
             members.add(member);
             
        }
        return members;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-22
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多