[救急]关于jdbc批处理更新时候的查询问题

jackingod 技术架构  2010-08-24 10:06:40
在一个链接中进行批量处理,conn 为同一个链接, 初始化默认打开事物并且设置自动提交为false。

insertIntoEvw(conn, corrList, user_id);// 插入evw表

// 从evw中检索数据, 插入到主表
insertEvtFromEvw(conn, user_id);

完成后 conn.commit();

但是现在遇到一个问题插入evw后 在后来这个insertEvtFromEvw方法中检索不到前一步插入到evw的数据。

以前也遇到过, 通过程序的方式处理的, 请问高手有什么处理方法?
...全文
43 点赞 收藏 3
写回复
3 条回复
jackingod 2010年09月16日
谢谢楼上2位, 是自己程序有点问题。真不应该。
回复 点赞
ljf_ljf 2010年08月24日
1) 你使用的事务数据库是这样的. 当你还没有提交(Commit),数据存储介质记录依然是没有改变的. 所以,你查询的结果依然是没有那一条记录.
2) 基于第一的原因,我们在处理批量插入时候需要注意两个事情.
第一,插入数据是否需要进行即时查询.有其他的业务需要基于这些数据继续进行呢?若是需要,请你不要进行批量插入.因为这样会影响到你系统本身的业务.
第二,寻找一个适合本身系统批量插入的机制.(多少秒就提交一次或者是插入多少条记录提交一次等)
回复 点赞
bean 2010年08月24日
插入evw后,应该先COMMIT一下吧
回复 点赞
发动态
发帖子
Java SE
创建于2007-09-28

3.4w+

社区成员

30.7w+

社区内容

Java 2 Standard Edition
社区公告
暂无公告