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