oracle事务 有事务commit 和事务rollback
在oracle 中想要恢复某个时间段得操作可以设置保存点
设置保存点方法 savepoint pointname
取消部分事务方法 rollback to pointname
取消所有事务 rollback
如果commit 事务之后就无法rollback。当exit时,退出自动commit事务
java程序中如何使用事务呢?
<span style="font-size:24px;">Connection ct=null;
try{
Class,forname("oracle.jdbc.driver.jdbcDriver");
ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:myoracle",“scott”,"123");
<span style="color:#ff0000;">//加入事务处理
ct.setAutoCommit(false);</span>
Statement.sm=ct.createStatement();
sm.executeUpdate("update emp set sal=sal-100 where ename="SMITH");
sm.executeUpdate("update emp set sal=sal-100 where ename="SMITH");
<span style="color:#ff0000;">//提交事务
ct.commit();</span>
//关闭资源
sm.close();
ct.close();
}
catch(Exception e)
{
try{
<span style="color:#ff0000;">//如有异常事务回滚
ct.rollback</span>
}
catch(Exception ex)
{
ex.printStackTrace();
}
e.</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">printStackTrace();</span></span><span style="font-size:24px;">
;
}
</span>
上面把两次update作为一次事务进行提交