0
我正在使用JDBC,但遇到了一些回滾和保存點問題。 我不明白爲什麼這段代碼實際上不會回滾到保存點,並且插入的記錄仍然存在。JDBC保存點不會回滾
try {
conn.setAutoCommit(false);
stmt = conn.createStatement();
sp = conn.setSavepoint();
stmt.executeUpdate("INSERT INTO test(id) VALUES(" + args[0] + ")");
if(true) {
conn.rollback(sp);
System.out.println("rollback");
}
} catch (SQLException ex) {
// handle any errors
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
System.out.println("rollback");
conn.rollback(sp);
} finally {
conn.commit();
}
在此先感謝。
您使用的是哪個數據庫? –