1 //Test DML statement with rollback
6 public static void main(String
[] args
)
10 Class
.forName("csql.jdbc.JdbcSqlDriver");
11 Connection con
= DriverManager
.getConnection("jdbc:csql", "root", "manager");
12 Statement cStmt
= con
.createStatement();
13 con
.setAutoCommit(false);
15 cStmt
.execute("CREATE TABLE T1 (f1 integer, f2 char (20));");
17 PreparedStatement stmt
= null;
18 stmt
= con
.prepareStatement("INSERT INTO T1 VALUES (?, ?);");
19 for (int i
=0 ; i
< 10 ; i
++) {
21 stmt
.setString(2, String
.valueOf(i
+100));
22 ret
= stmt
.executeUpdate();
28 cStmt
.execute("UPDATE T1 set f2='2' where f1 = 2;");
29 ret
= cStmt
.executeUpdate("INSERT INTO T1 values (100, '100');");
30 if (ret
!= 1) System
.out
.println("Insert error");
31 ret
= cStmt
.executeUpdate("DELETE FROM T1 WHERE f1 = 4;");
32 if (ret
!= 1) System
.out
.println("Delete error");
35 System
.out
.println("After rollback, listing tuples:");
36 ResultSet rs
= cStmt
.executeQuery("SELECT * from T1;");
39 System
.out
.println("Tuple value is " + rs
.getInt(1)+ " "+ rs
.getString(2));
43 cStmt
.executeUpdate("DROP TABLE T1;");
47 System
.out
.println("Exception in Test: "+e
);