![]() |
||
Regular Member
![]() ![]() 加入日期: Jan 2011
文章: 64
|
引用:
主因應該是LR2001所講得,有uncommit的transactions。 現在SQL server預設的isolate transaction level是read commit。所以未commit會造成read lock的情況。 如果可以有辦法不要使用交易,就可以簡單化這個情況。 或是更改transaction isolate level (參考SET TRANSACTION ISOLATION LEVEL (Transact-SQL) 。如read uncommit就不會因交易作業而鎖住read動作。 使用trigger通常會慢一點,因主要原因是在transaction這裡鎖住了。 ycli6921兄是最好的解法。但是若是server cluster的環境下比較難實現。 其實在大部份情況下是可以不用動到交易的。 |
||||||||
![]() |
![]() |
*停權中*
加入日期: Jul 2013
文章: 331
|
引用:
恩,那我的方案是沒有考慮你們的狀況,請參考就好 |
|||
![]() |
![]() |
Major Member
![]() 加入日期: Oct 2002 您的住址: 中華民國台灣省桃園縣
文章: 154
|
引用:
後來我也有查到 TRIGGER 會變慢.../_\ 糟糕就是 不能不用交易... |
|
![]() |
![]() |
Major Member
![]() 加入日期: Oct 2002 您的住址: 中華民國台灣省桃園縣
文章: 154
|
引用:
剛才問了其他同事 都是說 把 UPDATE 獨立出 交易... 若後續的交易失敗 ,就將原來那筆資料 -1... |
|
![]() |
![]() |
Regular Member
![]() ![]() 加入日期: May 2008
文章: 57
|
引用:
是指在SQL Server裡面設全區變數嗎? |
|
![]() |
![]() |