| 
   
|   import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.SQLException;
 import java.sql.Savepoint;
 import java.sql.Statement;
 
 public class MainClass {
 public static void main(String[] args) {
 Connection connection = null;
 Statement statement = null;
 try {
 Class.forName("org.hsqldb.jdbcDriver").newInstance();
 String url = "jdbc:hsqldb:hsqldb\\demoDatabase";
 connection = DriverManager.getConnection(url, "username", "password");
 connection.setAutoCommit(false);
 
 statement = connection.createStatement();
 
 String update1 = "UPDATE employees SET email = '[email protected]' WHERE email = '[email protected]'";
 statement.executeUpdate(update1);
 Savepoint savepoint1 = connection.setSavepoint("savepoint1");
 
 String update2 = "UPDATE employees SET email = '[email protected]' WHERE email = '[email protected]'";
 statement.executeUpdate(update2);
 Savepoint savepoint2 = connection.setSavepoint("savepoint2");
 
 String update3 = "UPDATE employees SET email = '[email protected]' WHERE email = '[email protected]'";
 statement.executeUpdate(update3);
 Savepoint savepoint3 = connection.setSavepoint("savepoint3");
 
 String update4 = "UPDATE employees SET email = '[email protected]' WHERE email = '[email protected]'";
 statement.executeUpdate(update4);
 Savepoint savepoint4 = connection.setSavepoint("savepoint4");
 
 String update5 = "UPDATE employees SET email = '[email protected]' WHERE email = '[email protected]'";
 statement.executeUpdate(update5);
 Savepoint savepoint5 = connection.setSavepoint("savepoint5");
 
 connection.rollback(savepoint3);
 connection.commit();
 } catch (Exception e) {
 e.printStackTrace();
 } finally {
 if (statement != null) {
 try {
 statement.close();
 } catch (SQLException e) {
 } // nothing we can do
 }
 if (connection != null) {
 try {
 connection.close();
 } catch (SQLException e) {
 } // nothing we can do
 }
 }
 }
 }
 
 
 
 
 
 |  |