代码改变世界

ORA-01000: maximum open cursors exceeded

2015-05-29 13:51  programmer022  阅读(392)  评论(0)    收藏  举报

ORA-01000: maximum open cursors exceeded 

这是oracle数据库游标溢出错误

1,生成游标

  创建Statement或者PreparedStatement对象,会使用一个游标

2,数据库游标配置

  进入sqlplus,执行

      show parameter open_cursors;

  就可以看到每个数据库连接可以使用的最大游标数,默认为300

3,错误原因

  Statement或PreparedStatement对象没有关闭

4,调试方法

  运行发生错误的应用

  打开数据库,查询select * from v$open_cursor where user_name = '【用户名】' and cursor_type ='OPEN' ORDER BY SQL_TEXT;

  多次查询,观察查询结果,分析哪条语句一直在增长,

  通过问题查询语句定位应用中代码位置