diff --git a/ch7.md b/ch7.md index 34f0bd15..391c5edd 100644 --- a/ch7.md +++ b/ch7.md @@ -258,7 +258,7 @@ SELECT COUNT(*)FROM emails WHERE recipient_id = 2 AND unread_flag = true 如果两个事务同时尝试更新数据库中的相同对象,会发生什么情况?我们不知道写入的顺序是怎样的,但是我们通常认为后面的写入会覆盖前面的写入。 -但是,如果先前的写入是尚未提交事务的一部分,又会发生什么情况,后面的写入会覆盖一个尚未提交的值?这被称作 **脏写(dirty write)**【28】。在 **读已提交** 的隔离级别上运行的事务必须防止脏写,通常是延迟第二次写入,直到第一次写入事务提交或中止为止。 +但是,如果先前的写入是尚未提交事务的一部分,使得后面的写入覆盖了一个尚未提交的值,这时会发生什么呢?这被称作 **脏写(dirty write)**【28】。在 **读已提交** 的隔离级别上运行的事务必须防止脏写,通常是延迟第二次写入,直到第一次写入事务提交或中止为止。 通过防止脏写,这个隔离级别避免了一些并发问题: diff --git a/zh-tw/ch7.md b/zh-tw/ch7.md index 61a6d8f2..58814ef7 100644 --- a/zh-tw/ch7.md +++ b/zh-tw/ch7.md @@ -258,7 +258,7 @@ SELECT COUNT(*)FROM emails WHERE recipient_id = 2 AND unread_flag = true 如果兩個事務同時嘗試更新資料庫中的相同物件,會發生什麼情況?我們不知道寫入的順序是怎樣的,但是我們通常認為後面的寫入會覆蓋前面的寫入。 -但是,如果先前的寫入是尚未提交事務的一部分,又會發生什麼情況,後面的寫入會覆蓋一個尚未提交的值?這被稱作 **髒寫(dirty write)**【28】。在 **讀已提交** 的隔離級別上執行的事務必須防止髒寫,通常是延遲第二次寫入,直到第一次寫入事務提交或中止為止。 +但是,如果先前的寫入是尚未提交事務的一部分,使得後面的寫入覆蓋了一個尚未提交的值,這時會發生什麼?這被稱作 **髒寫(dirty write)**【28】。在 **讀已提交** 的隔離級別上執行的事務必須防止髒寫,通常是延遲第二次寫入,直到第一次寫入事務提交或中止為止。 透過防止髒寫,這個隔離級別避免了一些併發問題: