正确使用MySQL JDBC游标(jdbc,mysql,使用,编程语言)

时间:2024-05-04 09:25:04 作者 : 石家庄SEO 分类 : 编程语言
  • TAG :
转载自:
http://blog.csdn.net/seven_3306/article/details/9303879



该文章提出三种方式可以正确使用mysql 游标

1、当statement设置以下属性时,采用的是流数据接收方式,每次只从服务器接收部份数据,直到所有数据处理完毕,不会发生JVM OOM。


setResultSetType(ResultSet.TYPE_FORWARD_ONLY);

setFetchSize(Integer.MIN_VALUE);

2、调用statement的enableStreamingResults方法,实际上enableStreamingResults方法内部封装的就是第1种方式。

3、设置连接属性useCursorFetch=true (5.0版驱动开始支持),statement以TYPE_FORWARD_ONLY打开,再设置fetch size参数,表示采用服务器端游标,每次从服务器取fetch_size条数据。

但是实测,只有第一种,第二种方式可以,第三种方式不成功.

测试的MySQL JDBC版本 5.1.31

第三种方式,报错,总之,只要有useCursorFetch的参数设置,就会报如下异常.
Prepared statement needs to be re-prepared



正确使用MySQL JDBC游标

第二种方式 成功
将PreparedStatemen强转为com.mysql.jdbc.PreparedStatement,然后执行enableStreamingResults函数.
注意不要设置fetchsize 否则没有效果


正确使用MySQL JDBC游标

第一种方式 成功
正确使用MySQL JDBC游标
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:正确使用MySQL JDBC游标的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:设计模式和反模式简单介绍下一篇:

4 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18