防止不可重複讀取
你負責分析銀行客戶的資料。
你先撰寫一段指令碼,先選取每位客戶的資料。接著,指令碼會根據查詢結果進行一些數學運算(本練習不著重於這些運算)。之後,你想再次選取相同的資料,確保沒有任何變動。
由於這很關鍵,你認為在完成分析之前,最好不要讓任何人變更 customers 資料表。如此一來,你就能避免發生不可重複讀取。
本練習屬於課程
SQL Server 的交易與錯誤處理
練習說明
- 設定合適的隔離等級以防止不可重複讀取。
- 開始一個交易。
- 提交該交易。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
-- Set the appropriate isolation level
___ ___ ___ ___ ___ ___
-- Begin a transaction
___ ___
SELECT * FROM customers;
-- some mathematical operations, don't care about them...
SELECT * FROM customers;
-- Commit the transaction
___ ___