1、更改init<sid>.ora中的
   open_cursor=150,适量的改大点。2、根除
   资源释放。打开的记得关闭。

解决方案 »

  1.   

    游标要关闭。
     close cursor_name
      

  2.   

    public Vector getDatabaseTables(String schema) throws SQLException {
     Vector vector = new Vector();
     if (schema != null) {
     try {
      DatabaseMetaData databaseMetaData = this.con.getMetaData();
      ResultSet tables = databaseMetaData.getTables(null, schema,
       null, new String[]{Conf.TYPE_TABLE});
      while (tables.next()) {
       String tableName = tables.getString(Conf.TABLE_NAME);
       vector.add(tableName);
      }
     } catch (SQLException e) {
      System.out.println(Msg.ERROR_DB_GET_TABLE_FALSE);
      throw e;
     }
     }
     return vector;
     }
    我没有显示的打开游标
      

  3.   

    不好意思,小弟刚学.也不知道在哪儿设置1、更改init<sid>.ora中的
       open_cursor=150,适量的改大点。
      

  4.   

    1.优化你的程序。
      在conn.open()与conn.close()之间不要有任何循环语句。
    2.c:\Oracle\admin\服务名\pfile\init.ora
      

  5.   

    可是我在conn.open() and conn.close()中有三个循环语句,先查出schema,然后根据schema查出table/view,再根据table/view查出columns(Field),有两个循环的,那怎么办?
      

  6.   

    虽然你这段代码只是查询,你仍然可以在查询结束后使用commit/rollback来关闭所有你打开的游标,包括非你显式打开的游标。
      

  7.   

    修改open_cursor的值,如果大于300还没有起作用。应该优化你的程序了。
      

  8.   

    我把游标改大了一点,而且也把程序改了一下,就是在每次查询后都关闭连接,下次在打开连接.现在出现下面的错误:
    #!Log initializes on Fri Apr 02 16:58:44 CST 2004
    Start generating the XML file. Please wait! ...
    Generate XML file error:
    Io 异常: The Network Adapter could not establish the connection
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:335)
    oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:361)
    oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:442)
    oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:321)
    java.sql.DriverManager.getConnection(DriverManager.java:512)
    java.sql.DriverManager.getConnection(DriverManager.java:171)
    miusi.dsdt.MetaDataController.getNewConnection(MetaDataController.java:80)
    miusi.dsdt.MetaDataController.getTableColumns(MetaDataController.java:162)
    miusi.dsdt.MetaDataController.generateXMLByJDOM(MetaDataController.java:217)
    miusi.dsdt.MetaDataController.main(MetaDataController.java:294)