gpt4 book ai didi

java - 为什么返回的ResultSet为null

转载 作者:行者123 更新时间:2023-11-29 02:17:07 29 4
gpt4 key购买 nike

鉴于此表结构:

enter image description here

我想从数据库中获取用户的基本详细信息,所以我创建了一个名为 rstResulSet(请参见下面的代码)。当我遍历 rst 时,它总是返回 null

public ResultSet Detail(String mobile) throws Exception {
dbConnect(); // make connection
String sql = "select * from profile where mobile = ?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1, mobile);
ResultSet rst = pstmt.executeQuery();
dbClose(); // connection closed
return rst;
}

现在,如果我在从 return 接收到 rst 后对其进行迭代,我将得到 null 值。

try {
ResultSet rst = new DB().Detail(mobile);
String fname = rst.getString("firstname");
String lname = rst.getString("lasttname");
String date = rst.getString("dateofbirth");
System.out.println("First name : " + fname + "\nLast Name : " + lname + "\nDate of Birth : " + date);
} catch (Exception exc) {
exc.printStackTrace();
}

输出:

First name : null
Last name : null
Date of Birth : null

最佳答案

关闭数据库连接将导致关闭所有相关对象(结果集和准备好的语句)。所以 rs 在 dbClos​​e(); 之后将无效您应该在关闭连接之前读取结果集。

关于java - 为什么返回的ResultSet为null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37763349/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com