2011-04-03 121 views

回答

7

那麼,如果你使用的是SqlServer,並且ReadCommitted超時/鎖定有問題,這很容易解釋。您可能只需要運行:

ALTER DATABASE your_db SET SINGLE_USER WITH ROLLBACK IMMEDIATE ; 
ALTER DATABASE your_db SET READ_COMMITTED_SNAPSHOT ON; 
ALTER DATABASE your_db SET MULTI_USER; 

嘗試此操作,然後重新測試您的readcommitted方法。我會堅持下去。

+0

我討厭在ReadCommitted事務期間鎖定相同的問題。我的問題是,爲什麼這個解決了它?它應該從一開始就工作嗎?不管怎麼說,還是要謝謝你! – jinxen 2012-12-12 10:35:32

6

問題的核心:

我應該用READCOMMITTED或ReadUncommited事務隔離級別?

那麼,他們可以給出不同的結果。所以你實際上是問:

當更快時可以使用不同的結果集嗎?

答案取決於應用程序,只有你可以決定。但總的來說,客戶,特別是大型企業,對此並不是很寬容。

相關問題