引用:
作者comics
如果再去用 SELECT 統計總數,在同時大量購買的狀況下反而造成DATA LOCK...
我在想是否可以用 TRIGGER 自動去加總異動人數統計..
|
主因應該是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的環境下比較難實現。
其實在大部份情況下是可以不用動到交易的。