溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Oracle系列中事務(wù)有什么用

發(fā)布時(shí)間:2021-11-10 15:13:48 來源:億速云 閱讀:212 作者:小新 欄目:關(guān)系型數(shù)據(jù)庫

這篇文章主要為大家展示了“Oracle系列中事務(wù)有什么用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Oracle系列中事務(wù)有什么用”這篇文章吧。

回顧什么是事務(wù)?

一個(gè)不可分割的子操作形成一個(gè)整體,該整體要么全部執(zhí)行成功,要么全部執(zhí)行失敗。例如:轉(zhuǎn)帳


回顧為什么要用事務(wù)?

如果不用事務(wù)的話,為轉(zhuǎn)帳為例,可能出現(xiàn)一個(gè)用戶錢增加了,另一個(gè)用戶錢不變


回顧編程中,事務(wù)可用于哪一層?

事務(wù)放在業(yè)務(wù)層


回顧jdbc編程中,如何使用事務(wù)?

connection.setAutoCommit(false);

pstmt.executeUpdate();

connection.commit();

connection.rollback();


回顧hibernate編程中,如何使用事務(wù)?

transaction.begin();

session.save(new User());

transaction.commit();

transaction.rollback();


回顧spring編程中,如何使用事務(wù)?

spring可以分為二種

>編程式事務(wù),藕合

>聲明式事務(wù),解藕,提倡

Oracle的事務(wù)只針對DML操作,即select/insert/update/delete


回顧MySQL的事務(wù)開始:start transaction

Oracle系列中事務(wù)有什么用


Oracle的事務(wù)開始:第一條DML操作做為事務(wù)開始

Oracle的提交事務(wù)

(1)顯示提交:commit

(2)隱藏提交:DDL/DCL/exit(sqlplus工具)

注意:提交是的從事務(wù)開始到事務(wù)提交中間的內(nèi)容,提交到ORCL數(shù)據(jù)庫中的DBF二進(jìn)制文件

Oracle的回滾事務(wù)

(1)顯示回滾:rollback

(2)隱藏回滾:關(guān)閉窗口(sqlplus工具),死機(jī),掉電

注意:回滾到事務(wù)開始的地方

回顧什么是回滾點(diǎn)?

在操作之間設(shè)置的一個(gè)標(biāo)志位,用于將來回滾之用

回顧為什么要設(shè)置回滾點(diǎn)?savepoint a;rollback to savepoint a;

如果沒有設(shè)置回滾點(diǎn)的話,Oracle必須回滾到事務(wù)開始的地方,其間做的一個(gè)正確的操作也將撤銷

使用savepoint 回滾點(diǎn),設(shè)置回滾點(diǎn)a

savepoint a;

使用rollback to savepoint,回滾到回滾點(diǎn)a處

rollback to savepoint a;

Oracle提交或回滾后,原來設(shè)置的回滾點(diǎn)還有效嗎?

原回滾點(diǎn)無效了

Oracle之所以能回滾的原因是?

主要機(jī)制是實(shí)例池 

回顧MySQL支持的四種事務(wù)隔離級別及能夠解決的問題

(1)read uncommitted -- 不能解決任何缺點(diǎn)

(2)read committed   -- 臟讀,Oracle默認(rèn)

(3)reapatable read  -- 不可重復(fù)讀,臟讀,MySQL默認(rèn)

(4)serializable     -- 幻讀,不可重復(fù)讀,臟讀,效率低

注意:jdbc/dbutils速度快,但書寫煩

      mybaits速度中等,但書寫"中等"

      hibernate速度慢,但書寫"爽"

Oracle支持的二種事務(wù)隔離級別及能夠解決的問題

Oracle支持:read committed 和 serializable

Oracle中設(shè)置事務(wù)隔離級別為serializable

set transaction isolation level serializable;

演示二個(gè)用戶同時(shí)操作emp表,刪除KING這條記錄,會(huì)有什么后果?

因?yàn)橛懈綦x級別的存在,所以不會(huì)出現(xiàn)二個(gè)用戶都刪除了KING這條記錄,

一定是一個(gè)用戶刪除KING成功,在該用戶沒有提交的情況下,另一個(gè)用戶等待

Oracle系列中事務(wù)有什么用

Oracle系列中事務(wù)有什么用

以上是“Oracle系列中事務(wù)有什么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI