首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JDBC PreparedStatement.executeBatch不更新数据库中的值,并且没有错误

JDBC PreparedStatement.executeBatch不更新数据库中的值,并且没有错误
EN

Stack Overflow用户
提问于 2013-07-09 20:07:37
回答 1查看 2.6K关注 0票数 2

嗨,我正在尝试做更新sybase数据库使用JDBC addBatch executeBatch。我在运行时创建表,并在jdbc批处理中插入值。我从逗号分隔的文件中读取以下格式的值

代码语言:javascript
运行
复制
1,ABC,DEF
2,GHI,KJL

create query is CREATE TABLE School(schoolid int,schoolname varchar ,schooltype varchar )
insert query INSERT INTO School(schoolid,schoolname,schooltype) VALUES (?,?,?)

发生的情况是,我没有得到成功执行的错误代码,但在最终数据库中没有值。表为空。我也在使用dbConn.commit(),但表仍然是空的。请指点一下。提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-09 20:10:42

您的批处理很可能比batchSize小,这意味着您永远不会使用pstmt.executeBatch();达到一行,因为++count % batchSize == 0永远不会计算为true。

您可以通过在关闭while循环后立即使用pstmt.executeBatch();添加一行代码来轻松解决这个问题。这样,任何未导致执行批处理并创建新批处理的剩余行都将在结束时执行。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17547814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档