转:https://blog.csdn.net/ALEX_wxy/article/details/83901129
ora-01000: maximum open cursors exceeded:表示已经达到一个进程打开的最大游标数。
1.主要原因:Java代码在执行(Stored Procedure)conn.createStatement()和conn.prepareStatement()时,相当于在数据库中打开了一个cursor。尤其是,如果你的createStatement和prepareStatement是在一个循环里面的话,就会非常容易出现这个问题。因为游标一直在不停的打开,而且没有关闭。
一般来说,Java中createStatement和prepareStatement都应该要放在循环外面,而且使用了这些Statment后,及时关闭。最好是在执行了一次executeQuery、executeUpdate等之后,如果不需要使用结果集(ResultSet)的数据,就马上将Statment关闭。
标签:createStatement,maximum,01000,cursors,exceeded,java,open From: https://www.cnblogs.com/qsds/p/16778872.html