2010-02-04 69 views

回答

3

假設你有一個SQL語句,例如,UPDATE table SET a = a + 1 WHERE ...,這將對應於以下代碼:

read a 
a = a + 1 
write a 

假設兩個客戶端A和B同時執行此操作。可能會發生以下情況(時間從上到下):

A   B 
read a  
      read a 
a = a + 1 
write a 
      a = a + 1 
      write a 

會發生什麼情況? a只增加一次,但應該增加兩次。這是一個經典的併發衝突。爲避免這種衝突,數據庫使用交易

+0

很好的解釋。謝謝。 – LearningCSharp

0

當兩個事務試圖在database.There鎖定一個資源都在這個很多教程只是使用谷歌找到some.Here併發衝突發生是鏈接到一個 link text

+0

謝謝,我試過谷歌,得到了msdn http://msdn.microsoft.com/ en-us/library/dd937753(SQL.105).aspx,但無法理解這個概念是什麼。您的鏈接更有幫助。謝謝 – LearningCSharp