關于原子性問題的兩個疑問?
不明白的地方在于:老師在講原子性的時候說原子性跟一致性是沒有關系的,按照我的理解就是數據庫數據的一致性并不靠原子性保證不知掉我理解的對不對?在之前的課程里面又說道 事務單元之間的組合 寫寫事務之間需要排隊的 那么在我的理解就是不可能存在Bob在向Smith轉賬100塊錢的時候 smith的賬戶還能有其它的寫事務單元去更新Smith賬戶,向Smith的賬戶寫入300塊錢?
不明白的地方在于:老師在講原子性的時候說原子性跟一致性是沒有關系的,按照我的理解就是數據庫數據的一致性并不靠原子性保證不知掉我理解的對不對?在之前的課程里面又說道 事務單元之間的組合 寫寫事務之間需要排隊的 那么在我的理解就是不可能存在Bob在向Smith轉賬100塊錢的時候 smith的賬戶還能有其它的寫事務單元去更新Smith賬戶,向Smith的賬戶寫入300塊錢?
2017-12-31
舉報
2018-02-17
一致性指的是 事務的中間狀態(tài)沒有辦法被別的事務讀到 比如bob和smith賬戶余額都為0的時候? 原子性指的是事務失敗就回滾 成功就一起成功 他兩沒關系。? bob向smith轉賬的時候其實有兩個跟smith賬戶有關 一個是查詢smith賬戶的余額 第二個是寫入 (余額 + 100)的數值 如果寫入300錢的操作在這兩個動作之間就會產生不一致性。 但是這是可能發(fā)生的 在隔離級別為read-uncommitted的時候 沒有提交的時候別的事務就能讀到這個中間狀態(tài)