JDBC的事務控制

2021-05-28 06:26:16 字數 729 閱讀 4109

jdbc的事務控制和批量處理

一、事物的概念

所謂事務:是指一組原子操作(一組sql語句執行)的工作單元

這個工作單元中的所有原子操作在進行期間,與其他事務隔離,免於因資料**的交相更新而發生混亂,事務中的所有原子操作要麼全部執行成功,要麼全部失敗。

將需要新增事務的**放在try、catch塊中:

try catch (sqlexception e)

在try塊內新增提交操作,表示操作無異常,提交事務:conn.commit();   //正常流程,提交事務

在catch塊內新增回滾事務,表示操作出現異常,撤消事務:conn.rollback();   //發生異常,撤消事務

statement的execute()等方法一次只能執行一條sql語句,如果同時有多條sql語句要執行的話,可以使用addbatch()方法將要執行的sql語句加入進來,然後執行executebatch()方法,這樣就可以在一次方法呼叫中執行多條sql語句,以提高執行效率。

為了保證這一批語句要麼全部成功,要麼全部失敗,應該把批處理放置在事務中進行。

使用preparedstatement也可以進行批處理。

注意:批處理中執行的語句只能是更新語句(insert、delete、update),否則會丟擲異常。

jdbc控制事務

jdbc如何控制事務 1.什麼是事務 對乙個資料資源 比如資料庫 進行一系列操作,要將這些操作當作乙個原子操作來進行,要麼全部成功,要麼全部失敗 2.事務的acid特性 atomic 原子性 多個操作要當作乙個原子操作來進行,要麼全部成功,要麼全部失敗 consistent 一致性,即事務成功執行以...

JDBC 控制事務

事務 乙個包含多個步驟的業務操作,如果這個業務操作被事務管理,則這多個步驟要麼同時成功,要麼同時失敗 操作 1 開啟事務 2 提交事務 3 回滾事務使用 connection 物件來管理事務 開啟事務 setautocommit boolean autocommit 呼叫該方法設定引數為false,...

JDBC控制事務

事務 乙個包含多個步驟的業務操作。如果這個業務操作被事務管理,則這多個步驟要麼同時成功,要麼同時失敗。操作 a.開啟事務 b.提交事務 c.回滾事務 使用connection物件來管理事務 a.開啟事務 setautocommit boolean autocommit 呼叫該方法設定引數為false...