簡體   English   中英

事務級別之間的差異:讀可寫和可隔離級別

[英]Differences between TRANSACTION's levels: READ WRITE and ISOLATION LEVEL SERIALIZABLE

這兩個事務級別之間的區別是: READ WRITEISOLATION LEVEL SERIALIZABLE 據我了解, READ WRITE允許臟讀,而ISOLATION LEVEL SERIALIZABLE可以防止其他用戶更改數據(認為我在這里錯了),或者只是讀取在事務開始時可用的數據(看不到數據,在我進行交易時其他用戶已更改了該數據)。

您可以在oracle站點上找到有關此主題的詳細信息。

基本上, READ COMMITTED允許“不可重復讀取”和“幻像讀取”,而SERIALIZABLE均禁止。

如果允許不可重復讀取,則同一事務內部的同一SELECT查詢可能會根據發出查詢的時間返回不同的結果。 其他並行事務可能會更改數據,並且此更改在您的事務內部可能會變得可見。

如果允許幻像讀取,則可能發生以下情況:當您在一個事務中兩次發出相同的SELECT查詢,而另一個事務並行地將行插入表中時,這些行可能在事務內部可見,但僅在第二選擇。 因此,同一條select語句將在第一次執行時返回例如5行,在第二次執行時返回10行。

這兩個屬性是相似的,但第一個屬性僅說明可能更改的數據,而scond屬性則說明可能返回的其他行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM