Oracle ORA-01000: 超出打开游标的最大数

解决办法:

查看当前游标参数:

show parameter open_cursors;
不过出现这个错误一般都是应用程序里没有关闭游标的结果,重点检查你的应用程序
------解决方案--------------------java里每次打开一个statement对象jdbc都会在数据库中打开一个游标来执行操作,做完业务后必须马上关闭,否则一旦多次打开且不关闭就会造成ORA-01000: 超出打开游标的最大数错误,如果需要循环建立statement对象最后统一提交,可以在循环里执行完活动马上关闭,关闭后业务处于未提交状态,直到执行connection.commit事件时活动才会提交.
 alter system set open_cursors=1000 scope=both;
oracle数据库中open_cursors默认值为300,正常情况都够用了,出现ORA-01000错误基本都是有程序没关闭游标,多出现于java程序使用连接池连接数据库的情况下,打开了statement没关闭就把连接放回了连接池或者循环打开statement对象而不关闭,请仔细检查自己的程序代码

你可能感兴趣的:(乱七八糟)