【JDBC】使用PreparedStatement.executeBatch(),向Oracle批量提交数据时出现的神秘数字和怪现象
如果使用PreparedStatement.executeBatch()向DB批量提交数据,比如一次提交一万条,总数两百万条,总共要提交两百次。
在循环提交的同时,使用sqlplus打开目标端的数据库连接,使用select count(*) from table连续观察记录数,
会发现count是这样的:13013,1270127,1240124.....,为什么其数字是10000*n+n的形式呢?
另外发现,在连续提交中,有一定几率卡死在某个数字上,如1270127,然后任凭你敲多少次select count(*) from table,始终得到1270127这个数字,同时循环批量提交还未结束......我感觉,循环批量提交程序在提交后等待DB的反馈,但DB已经不再回应了。
这种情况不是常发生,概率较小,但总能遇上。
先记录在此,以后有了结论再补充。
END
分类:
Java.JDBC
, Java.DB.Oracle
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2020-06-17 【高中数学/对数函数/零点】已知函数f(x)=1/x-log(2,x),在下列区间中,包含f(x)零点的区间是?
2017-06-17 【Canvas与艺术】新制无底图安布雷拉暗黑系桌面(1920*1080)