Connection. rollback方法—事务回滚

来源:互联网 发布:java如何解决并发问题 编辑:程序博客网 时间:2024/04/30 06:54

该方法用于取消在当前事务中进行的更改,并释放当前Connection对象持有的所有数据库锁。此方法只有在手动事务模式下才可用。

语法1  rollback() 

示例  下面的代码利用rollback方法撤销对记录的删除操作。
Connection conn = ……        //省略部分代码
conn.setAutoCommit(false);       //先将事务设为手动提交
Statement st = conn.createStatement();
String sql = "DELETE FROM users WHERE username = 'xiaoli'";
st.execute(sql);
conn.roolback();         //将事务回滚

语法2  rollback(Savepoint savepoint) 

savepoint:要回滚到的Savepoint对象。

示例  本示例调用Connection的roolback()方法取消所有设置给定Savepoint对象之后进行的更改。
Connection conn = ……        //省略部分代码
conn.setAutoCommit(false);       //先将事务设为手动提交
Statement st = conn.createStatement();
String sql = "DELETE FROM users WHERE username = 'xiaoli'";
st.execute(sql);
conn.roolback(spName);        //将事务回滚到保存点

0 0