Savepoint 界面為您提供了額外的事務控制。大多數現代 DBMS 都支持其環境中的保存點,例如 Oracle 的 PL/SQL。
設置保存點時,您在事務中定義了邏輯回滾點。如果在保存點之后發生錯誤,您可以使用回滾方法撤消所有更改或僅撤消保存點之后所做的更改。
Connection 對象有兩個新方法可以幫助您管理保存點 –
setSavepoint(String savepointName): 定義一個新的保存點。它還返回一個 Savepoint 對象。
releaseSavepoint(Savepoint savepointName):刪除一個 Savepoint。請注意,它需要一個 Savepoint 對象作為參數。該對象通常是setSavepoint()方法生成的保存點。
有一個rollback(String savepointName)方法,用于回滾工作到指定的保存點。
示例
try { //Assume a valid connection object conn conn.setAutoCommit(false); Statement stmt = conn.createStatement(); //set a Savepoint Savepoint savepoint1 = conn.setSavepoint("Savepoint1"); String SQL = "INSERT INTO Employees " + "VALUES (106, 20, 'Rita', 'Tez')"; stmt.executeUpdate(SQL); //Submit a malformed SQL statement that breaks String SQL = "INSERTED IN Employees " + "VALUES (107, 22, 'Sita', 'Tez')"; stmt.executeUpdate(SQL); // If there is no error, commit the changes. conn.commit(); } catch(SQLException se){ // If there is any error. conn.rollback(savepoint1); }
登錄后復制
以上就是JDBC 中的保存點是什么?解釋?的詳細內容,更多請關注www.92cms.cn其它相關文章!