日期:2014-05-17  浏览次数:20561 次

java事务处理
java操作oracle数据库
有一个脚本用事务处理,其中包括两个方法

方法A 插入表1数据
方法B 从表1取出数据 插入表2.

方法A插入成功,这时断点 在方法B调试时,取数据为空。直接去表查看没有数据。
是事务影响的问题,如果方法B 改为hibernate的方式取,就能去出来。

怎么能用sql方式取出来呢?

------解决方案--------------------

这样试试
方法A
// 关闭自动提交事务(开启事务)
connection.setAutoCommit(false);
insert;
// 提交
connection.commit();

------解决方案--------------------
如果都在一个事务中,B应该是可以查到数据的
------解决方案--------------------
引用:
如果都在一个事务中,B应该是可以查到数据的

查不到可能是查询条件不对
------解决方案--------------------
问题:不能直接根据插入表1 的数据直接插入表2 么?


如果可以,建议以下步骤:

事务开始
方法A 插入表1数据
方法B 插入表2数据
如果有个不成功,回滚
否则,提交完成。