資料庫事務隔離級別
發布時間: 2025-07-09 00:57:54
㈠ 4種事務特性,5種隔離級別,7種傳播行為
4種事務特性: 原子性:事務內部的操作必須作為一個整體執行,要麼全部完成,要麼全部回滾。 一致性:確保事務執行前後數據的完整性保持一致。 隔離性:在事務執行過程中,其他事務不應干擾到當前事務的執行。 持久性:一旦事務結束,其對資料庫的修改將被永久保存。
5種隔離級別: DEFAULT:默認隔離級別,由資料庫平台決定。 未提交讀:允許其他事務讀取未提交的數據,可能導致臟讀、不可重復讀和虛幻讀。 已提交讀:避免臟讀,但不可重復讀和虛幻讀仍有可能發生。 可重復讀:避免臟讀和不可重復讀,但虛幻讀可能依然存在。 串列化:防止所有讀問題,但代價最高。
7種事務傳播行為: PROPAGATION_REQUIRED:如果當前存在事務,則加入該事務;如果當前沒有事務,則創建一個新的事務。 PROPAGATION_SUPPORTS:如果當前存在事務,則加入該事務;如果當前沒有事務,則以非事務方式執行。 PROPAGATION_MANDATORY:如果當前存在事務,則加入該事務;如果當前沒有事務,則拋出異常。 PROPAGATION_REQUIRES_NEW:創建一個新的事務,並暫停當前事務。 PROPAGATION_NOT_SUPPORTED:以非事務方式執行操作,如果當前存在事務,則將當前事務掛起。 PROPAGATION_NEVER:以非事務方式執行,如果當前存在事務,則拋出異常。 PROPAGATION_NESTED:如果當前存在事務,則在嵌套事務內執行;如果當前沒有事務,則行為等同於PROPAGATION_REQUIRED。
熱點內容