java - 连接正忙于处理另一个 hstmt 的结果

标签 java

我正在尝试迭代 ResultSet 值以在 while 循环中插入查询。 代码片段如下:

    String sel="select roll_no from Nursery";
    rs=stmt.executeQuery(sel);
    stmt1=con.createStatement();
    int aa;
    while(rs.next())
    {
        aa=rs.getInt(1);
        stmt1.executeUpdate("insert into [Nursery_FirstTerminal_marks](roll_no)values("+aa+")");
        //stmt.close();
    }

    JOptionPane.showMessageDialog(null, "Data has been inserted");
}
    catch(Exception e)
    {
        System.out.println(e);
        // JOptionPane.showMessageDialog(null, e);
    }

但是抛出了下面给出的错误。

java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]Connection is busy with results for another hstmt

你能建议一下如何摆脱它吗..

最佳答案

这是因为您针对同一连接打开了打开结果集。例如,您执行一个 SqlCommand 以从表中选择所有行,而结果集未被耗尽,您尝试使用相同的连接执行另一个 SqlCommand,您将命中此错误消息。

要解决这个问题,您有两个选择:

一个。确保在发送下一个 SqlCommand 之前从挂起的结果集中读取其余数据。

使用 MARS(多 Activity 结果集)连接设置在一个连接中启用多 Activity 结果集。

关于java - 连接正忙于处理另一个 hstmt 的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15019151/

相关文章:

java - 只想提取$$text$$

java - IDE 将 Listener 标记为红色并表示它不是抽象的

java - Spring WebFlow 到 MVC 转换问题

java - 抽取Java中几种方法的常见异常处理代码

java - 您如何指定 JMH 微基准测试在不使用资源文件的情况下运行?

Java 反射 : making a subclass instance be referred to as if it was super instance

java - 如何在 IBatis 的选择查询中发送一个列表?

java - 如何将键和值存储到 hashmap 中并相应地打印出来?

java - Spring Controller 测试随机失败

java - ZK 菜单项图像未显示