java 事務提交/回滾

perfychi發表於2014-06-21

1.1        事務例項

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.Statement;

 

public class RunInsert {

   

    /**

     * @param args

     */

    public static void main(String[] args) {

       Connection conn = null;

       Statement stmt = null;

       try {

           // 動態匯入資料庫的驅動

           Class.forName("com.mysql.jdbc.Driver");

 

           // 獲取資料庫連結

           conn = DriverManager.getConnection(

                  "jdbc:mysql://localhost:3306/jdbc_teaching", "root", "");

          

           // 開啟事務

           conn.setAutoCommit( false );

 

           // 創造SQL語句

           String sql = "INSERT INTO user_list ( user_name, user_password ) VALUES ( 'Eric', '123' )";

 

           // 執行SQL語句

           stmt = conn.createStatement();

           stmt.executeUpdate(sql);

          

           // 提交事務

           conn.commit();

          

           System.out.println( "OK!" );

       } catch (Exception e) {

           e.printStackTrace();

           // 回滾事務

           try {

              conn.rollback();

           } catch ( Exception e2 ) {}

       } finally {

           // 關閉Statement

           try {

              stmt.close();

           } catch (Exception e) {}

           // 關閉Connection

           try {

              conn.close();

           } catch (Exception e) {}

       }

    }

}

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27042095/viewspace-1190544/,如需轉載,請註明出處,否則將追究法律責任。

相關文章