Java使用Oracle遇到的最大游标超出问题及其解决方法

空城旧人Brccy

空城旧人Brccy

2016-02-19 15:39

下面请跟着图老师小编一起来了解下Java使用Oracle遇到的最大游标超出问题及其解决方法,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

        很多朋友在Java开发中,使用Oracle数据库的时候,经常会碰到有ORA-01000: maximum open cursors exceeded.的错误。         
        实际上,这个错误的原因,主要还是代码问题引起的。  

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

        ora-01000: maximum open cursors exceeded.  

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

        表示已经达到一个进程打开的最大游标数。  
         
        这样的错误很轻易出现在Java代码中的主要原因是:Java代码在执行conn.createStatement()和conn.prepareStatement()的时候,实际上都是相当与在数据库中打开了一个cursor。尤其是,假如你的createStatement和prepareStatement是在一个循环里面的话,就会非常轻易出现这个问题。因为游标一直在不停的打开,而且没有关闭。 
         
        一般来说,我们在写Java代码的时候,createStatement和prepareStatement都应该要放在循环外面,而且使用了这些Statment后,及时关闭。最好是在执行了一次executeQuery、executeUpdate等之后,假如不需要使用结果集(ResultSet)的数据,就马上将Statment关闭,调用close()方法。 
         
        对于出现ORA-01000错误这种情况,单纯的加大open_cursors并不是好办法,那只是治标不治本。实际上,代码中的隐患并没有解除。  

        而且,绝大部分情况下,open_cursors只需要设置一个比较小的值,就足够使用了,除非有非常非凡的要求。

展开更多 50%)
分享

猜你喜欢

Java使用Oracle遇到的最大游标超出问题及其解决方法

编程语言 网络编程
Java使用Oracle遇到的最大游标超出问题及其解决方法

Oracle 数据 使用游标

编程语言 网络编程
Oracle 数据 使用游标

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

“Word遇到问题需要关闭”问题的解决方法

word
“Word遇到问题需要关闭”问题的解决方法

Word遇到问题需要关闭的解决方法

word
Word遇到问题需要关闭的解决方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Word遇到问题需要关闭解决方法

电脑入门
Word遇到问题需要关闭解决方法

Word文档保存时常遇到的问题及其解决方

电脑入门
Word文档保存时常遇到的问题及其解决方

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Oracle是波音747还是MySQL丰田汽车呢?

Oracle是波音747还是MySQL丰田汽车呢?

来自Google的密码强度Javascript验证代码

来自Google的密码强度Javascript验证代码
下拉加载更多内容 ↓