conn.setAutoCommit(false); //其中conn是第一步获取的随数据库的链接对象。
3.把想要一次性提交的几个sql语句用事务进行提交 java
Statement stmt = null; stmt = conn.createStatement(); stmt.executeUpdate(sql1); stmt.executeUpdate(Sql2); conn.commit(); //使用commit提交事务
4.捕获异常,进行数据的回滚(回滚通常写在catch块中) sql
catch(Exception e) { ... try { conn.rollback(); } catch(Exception e) {...} }
5.把事务再改为自动提交(默认状态) 数据库
conn.setAutoCommit(true);解答各类疑问
实际上是能够设置存储点的 spa
Savepoint piont = conn.setSavepoint(); conn.rollback(point);
若是你没有设置存储点,他会回滚到你设置禁止事务自动提交的时候,由于你是先设置禁止自动提交的,再进行executeUpdate(sql)的,因此他会回滚到你的全部执行的这几个sql语句前的状态。 code