0
Update tmp
SET BakColumn1 = Column1
,Column1 = Column1 + ' Changed Value'
更新列是否有任何保證,我總是會得到在備份列(BakColumn)的列1原來的內容,如果我的發言是像上面在MS-SQL 2008或更高版本?如果沒有,還有其他的方式嗎?還是我必須執行兩個單獨的交易?爲了在SQL
高於1度並行度(MAX-DOP)是否會導致問題?
無論測試它會發生什麼,可能是每次都會發生。 –
@TabAlleman我懷疑DoP在這裏扮演一個角色,這就是爲什麼要確定是否有人已經嘗試過或有具體的答案 – Asha
我的理解是更新將被視爲原子操作,並且鎖定機制將保證始終使用正確的值。由於更新的原子性,並行度應該不重要。我還沒有找到任何好的參考,儘管如此,我可能在這方面是錯誤的。 – jpw