通过jasper生成报告时,我们收到异常错误...
Error filling print... net.sf.jasperreports.engine.JRException: Error executing SQL statement for : risk
net.sf.jasperreports.engine.JRRuntimeException: net.sf.jasperreports.engine.JRException: Error executing SQL statement for : risk
at net.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:729)
Caused by: java.sql.SQLException: ORA-01000: maximum open cursors exceeded
如何解决这个问题?
答案 0 :(得分:0)
Сonnect到数据库并检查open_cursors限制:
select value from v$parameter where name='open_cursors'
因此,我们列出了目前打开最多游标的前20个会话:
select * from ( select ss.value, sn.name, ss.sid from v$sesstat ss, v$statname sn where ss.statistic# = sn.statistic# and sn.name like '%opened cursors current%' order by value desc) where rownum < 21;
解决方案是增加号码。 open_cursors参数的开头为:
alter system set open_cursors=400 scope=both