1. 程式人生 > 資料庫 >2020-12-09資料庫事務

2020-12-09資料庫事務

事務
    事務的基本介紹
        概念:如果一個包含多個步驟的業務操作,被事務管理,那麼這些操作要麼同時成功,要麼同時失敗
        
        操作:
            1.開啟事務:start transaction
            2.回滾:rollback
            3.提交commit
    
    事務的四大特徵
        1.原子性:是不可分割的最小操作單位,要麼同時成功,要麼同時失敗
        2.永續性:當事務提交或者回滾後,資料庫會持久化的儲存資料
        3.隔離性:多個事務之間相互獨立
        4.一致性:事務操作前後,資料總量不變

    
    事務的隔離級別:
        概念:多個事務之間是隔離的,相互獨立的。但是如果多個事務操作同一批資料,則會引發一些問題,設定不同的隔離級別就可以解決這些問題
        存在問題:
            1.髒讀:一個事務讀取到另一個事務中沒有提交的資料
            2.不可重複讀(虛讀):在同一個事務中,兩個讀取到的資料不一樣
            3.幻讀:一個事務操作(DML)資料表中的所有記錄,另一個事務添加了一條資料,則第一個事務查詢不到自己的修改

        隔離級別:
            1.read uncommitted:讀未提交

                髒讀,不可重複讀,幻讀
            2.read committed:讀已提交
                不可重複讀,幻讀
            3.repeatable read:可重複讀
                幻讀
            4.serializable:序列化
                可以解決所有的問題