首先检查程序是否有问题,看是否打开的游标 没有及时的关闭。
修改 init.ora文件中的open_cursors参数300或更大。

解决方案 »

  1.   

    默认的open_cursors大小为300
    oraclehome\admin\oradb\pfile\init.ora文件中修改大小
      

  2.   

    推荐这样用游标declare
        cursor UB is select distinct(PAGE_URL) from B;
    begin
        for tab in UB loop
           insert into c
            select a.xxx from A where a.PAGE_URL=tab.PAGE_URL;
        end loop;
    end;用隐式游标,避免定义变量,打开,关闭 游标
      

  3.   

    我目前在ORACLE 中的SQL语句都是直接写在代码中,然后preparestatement直接执行.查询结果存在ResultSet里.我想是否有更好的结构设计避免一次查询中使用大量游标导致游标出错?