如果這時候我們在查詢窗口二中執(zhí)行: select count(*) from t1 就會看到這個執(zhí)行很久不能執(zhí)行完畢,因為這個查詢遇到了一個死鎖。
清除掉這個測試環(huán)境,需要在查詢窗口一中再執(zhí)行如下語句: ROLLBACK TRANSACTION drop table t1
演示二:對被鎖住的記錄,NOLOCK 和 READPAST處理的策略
這個演示同樣需要兩個查詢窗口。 請在查詢窗口一中執(zhí)行如下語句: CREATE TABLE t2 (UserID int , NickName nvarchar(50)) go insert t2(UserID,NickName) values(1,'郭紅俊') insert t2(UserID,NickName) values(2,'蟈蟈俊') go BEGIN TRANSACTION update t2 set NickName = '蟈蟈俊.net' where UserID = 2
請在查詢窗口二中執(zhí)行如下腳本: select * from t2 WITH(NOLOCK) where UserID = 2 select * from t2 WITH(READPAST) where UserID = 2