savepointtester.java

来自「Java网络编程精解/第8章数据库编程上机」· Java 代码 · 共 31 行

JAVA
31
字号
import java.sql.*;
public class SavepointTester{
  public static void main(String args[])throws Exception{
    Connection con=new ConnectionProvider().getConnection();
    try{
      con.setAutoCommit(false);
      Statement stmt=con.createStatement();
      stmt.executeUpdate("delete from ACCOUNTS");
      stmt.executeUpdate("insert into ACCOUNTS(ID,NAME,BALANCE)"
        +"values(1,'Tom',1000)");
      Savepoint sp=con.setSavepoint();
      stmt.executeUpdate("update ACCOUNTS set BALANCE=900 where ID=1");
      con.rollback(sp);
      stmt.executeUpdate("insert into ACCOUNTS(ID,NAME,BALANCE)"
        +"values(2,'Jack',1000)");
      con.commit();
    }catch(SQLException e){
      con.rollback(); //撤销整个事务
    }finally{
      con.close();
    }
  }
}


/****************************************************
 * 作者:孙卫琴                                     *
 * 来源:<<Java网络编程精解>>                       *
 * 技术支持网址:www.javathinker.org                *
 ***************************************************/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?