在Oracle中,讀取操作不會阻礙更新操作,更新操作也不會阻礙讀取操作,這樣在Oracle中的各種隔離級別下,讀取操作都不會等待更新事務結束,更新操作也不會因為另一個事務中的讀取操作而發生等待,這也是Oracle事務處理的一個優勢所在。
oracle支持Read Committed和Serializable級別,默認的隔離級別是Read committed,在oracle中隔離級別實現如下:
Read Committed隔離級別(也稱為語句級別的隔離)
如果一個事務正在對某個表進行DML操作,而這時另外一個會話對這個表的記錄進 行讀取操作,則Oracle會去讀取回滾段或撤銷段中存放的更新之前的記錄,而不會象SQL Server一樣等待更新事務的結束。
Serializable隔離級別(也稱為事務級別的隔離)
事務中的讀取操作只能讀取這個事務開始之前已經提交的數據結果。如果在讀取時, 其他事務正在對記錄進行修改,則Oracle就會在回滾段或撤銷段中去尋找對應的原來未經更改的記錄(而且是在讀取操作所在的事務開始之前存放於回滾段或 撤銷段的記錄),這時讀取操作也不會因為相應記錄被更新而等待。
————————————————
版權聲明:本文為CSDN博主「ClementQL」的原創文章,遵循 CC 4.0 BY-NC-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/CQL_K21/java/article/details/88621615
————————————————
版權聲明:本文為CSDN博主「ClementQL」的原創文章,遵循 CC 4.0 BY-NC-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/CQL_K21/java/article/details/88621615