我在名为“ category”的列中有4行的数据库

我的代码说:

try {
        String query = "SELECT category FROM descriptionLink";
        ResultSet rs = con.statement.executeQuery(query);

        while (rs.next()){
            ta_results.setText(rs.getString("category")+"\n");
        } rs.close();
    } catch (SQLException erro){
    JOptionPane.showMessageDialog(null, "Error: "+ erro);
}


当它运行时,它只返回LAST行。
为什么?我希望它返回所有4行,并将这些结果打印在文本区域(ta_results)

最佳答案

您阅读的每一行看起来都覆盖了上一行:

ta_results.setText(rs.getString("category")+"\n");


尝试累积输出:

    StringBuilder sb = new Stringuilder();
    while (rs.next()){
        sb.append(rs.getString("category")+"\n");
    }
    rs.close();
    ta_results.setText(sb.toString());

关于java - JDBC Mysql Select不返回所有行结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27089923/

10-15 13:18