MySQL里resutl set的next的问题

鸣鸣Amadues 2020-10-17 03:50:09
先是这么些了,前进再后退
result_set.next();
result_set.previous();
然后再使用next的时候,报了这么一个错误
Operation not allowed for a result set of type ResultSet.TYPE_FORWARD_ONLY.
我感觉大概是只能前进不能后退的意思,不过具体还是不太理解为什么,有谁了解的可以说说看?


...全文
8169 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dkwuxiang 2020-10-19
  • 打赏
  • 举报
回复 1
resultSetType参数设置为TYPE_FORWARD_ONLY,在从ResultSet中读取记录的时,对于访问过的记录就自动释放了内存,所以只允许向下移动。而设置为TYPE_SCROLL_INSENSITIVE或TYPE_SCROLL_SENSITIVE时为了保证能游标能向上移动到任意位置,已经访问过的所有都保留在内存中不能释放,所以大量数据加载的时候,就OOM了。
tianfang 2020-10-18
  • 打赏
  • 举报
回复
TYPE_FORWARD_ONLY 是缺省值,可以创建 Statement 自定义: Statement statement = connection.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧