Java操作oracle中的事物回滾
阿新 • • 發佈:2019-02-19
在java程式中使用事務,在java 操作資料庫時,為了保證資料的一致性。package com.wxh; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class TestTrans { public static void main(String[] args) { Connection ct=null; try { //1.載入驅動 Class.forName("oracle.jdbc.driver.OracleDriver"); //2.得到連線 ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ora", "scott", "tiger"); //加入事物處理 ct.setAutoCommit(false); Statement sm=ct.createStatement(); //從scott的sal-100 sm.execute("update emp set sal=sal-100 where ename='SCOTT'"); int i=7/0;//設定一個錯誤 //給SMITH+100 sm.execute("update emp set sal=sal+100 where ename='SMITH'"); //提交事物 ct.commit(); //關閉資源 sm.close(); ct.close(); } catch (Exception e) { //如果發生異常,就回滾 try { ct.rollback(); } catch (Exception e2) { e2.printStackTrace(); // TODO: handle exception } // TODO: handle exception e.printStackTrace(); } } }