gpt4 book ai didi

java - ResultSet 关闭后不允许操作

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:51:17 25 4
gpt4 key购买 nike

好吧,过去两天一直在努力解决这个问题。

Statement statement = con.createStatement();
String query = "SELECT * FROM sell";
ResultSet rs = query(query);
while (rs.next()){//<--- I get there operation error here

这是查询方法。

    public static ResultSet query(String s) throws SQLException {
try {
if (s.toLowerCase().startsWith("select")) {
if(stm == null) {
createConnection();
}
ResultSet rs = stm.executeQuery(s);
return rs;
} else {
if(stm == null) {
createConnection();
}
stm.executeUpdate(s);
}
return null;
} catch (Exception e) {
e.printStackTrace();
con = null;
stm = null;
}
return null;
}

我该如何修复这个错误?

最佳答案

仅从您发布的代码很难确定,但我怀疑 ResultSet 被无意中关闭(或者 stm 被重用)while 循环体中。这将在下一次迭代开始时触发异常。

此外,您需要确保您的应用程序中没有其他线程可能正在使用相同的数据库连接或 stm 对象。

关于java - ResultSet 关闭后不允许操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10933399/

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