首頁 > 資料庫 > mysql教程 > JDBC 中的儲存點是什麼?解釋?

JDBC 中的儲存點是什麼?解釋?

WBOY
發布: 2023-09-08 21:29:06
轉載
1355 人瀏覽過

JDBC 中的保存点是什么?解释?

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 中的儲存點是什麼?解釋?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板