java.sql.sqlRecoverableException : Closed statement: next 异常

标签 java jdbc sqlexception

我的代码抛出

java.sql.sqlRecoverableException: Sentencia cerrada: next

用英语来说,我想应该是:

java.sql.sqlRecoverableException: Closed statement: next

这是我的代码:

public TransactionArray() throws SQLException {

  /* Obtenemos la tabla de transacciones. */
  Connection connection;
  connection = ConnectionManager.getConnection(STATISTIC_DATA_BASE);
  Statement stmt = null;
  String query =
          "select * " +
          "from " + "dCellStatistic" + ".F_Transaction";
  ResultSet rs = null;
  try {
     stmt = connection.createStatement();
     rs = stmt.executeQuery(query);
  } catch (SQLException e ) {
     e.printStackTrace();
  } finally {
     if (stmt != null) { stmt.close(); }
  }

  /* Construimos las transacciones a partir de los registros. */
  List<Transaction> transactionList = new ArrayList<Transaction>();
  while (rs.next()) { //THE PROBLEM ARISES IN THIS LINE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     transactionList.add(new Transaction(rs));
  }
  array = transactionList.toArray(new Transaction[transactionList.size()]);

关于我可能做错了什么的任何线索?我在 Code Ranch 上看到了两个关于类似问题的线程,但它们似乎都没有为我的案例提供解决方案。

最佳答案

您在从结果集中检索信息之前关闭语句。在 rs.next() 循环之后移动 stmt.close() 调用(但保留 try/finally)。

关于java.sql.sqlRecoverableException : Closed statement: next 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14958165/

相关文章:

java - “Cannot find symbol”或 “Cannot resolve symbol”错误是什么意思?

java - LoadRunner 与自定义 Java 代码相结合,为每个 vuser 创建 saml token

java - 如何将NULL值赋给一个字符串,然后将它插入到mysql数据库中

java - jTDS JDBC 驱动程序 : getNString() throws error

java - 搜索包含正斜杠的字段的正确 mysql 查询是什么?

java - Hibernate:如何映射一张表的两列

java - 在sql中计算平均值并使用jdbc更新它

android - SQLiteOpenHelper onCreate()/onUpgrade() 什么时候运行?

java - 超出最大游标数 SQLException-- 配置问题或游标泄漏?

java.sql.SQLException : Access denied for user 'xx@xx.xx' (using password: YES) appearing 2 years after installation 异常