SqlServer的更新鎖 UPDLOCK

2021-04-01 16:24:33 字數 600 閱讀 5566

updlock

讀取表時使用更新鎖,而不使用共享鎖,並將鎖一直保留到語句或事務的結束。updlock 的優點是允許您讀取資料(不阻塞其它事務)並在以後更新資料,同時確保自從上次讀取資料後資料沒有被更改。

這是sqlserver2000中對更新鎖的說明.

當我們用updlock來讀取記錄時可以對取到的記錄加上更新鎖,從而加上鎖的記錄在其它的執行緒中是不能更改的只能等本執行緒的事務結束後才能更改,我如下示例:

begin transaction --開始乙個事務

select qty

from mytable with (updlock)

where id in (1,2,3)

update mytable set qty = qty - a.qty

from mytable  as a

inner join  @_table as b on a.id = b.id

commit transaction --提交事務

這樣在更新時其它的執行緒或事務在這些語句執行完成前是不能更改id是1,2,3的記錄的.其它的都可以修改和讀,1,2,3的只能讀,要是修改的話只能等這些語句完成後才能操作.從而保證的資料的修改正確.

SqlServer的更新鎖 UPDLOCK

updlock.updlock 的優點是允許您讀取資料 不阻塞其它事務 並在以後更新資料,同時確保自從上次讀取資料後資料沒有被更改。當我們用updlock來讀取記錄時可以對取到的記錄加上更新鎖,從而加上鎖的記錄在其它的執行緒中是不能更改的只能等本執行緒的事務結束後才能更改,我如下示例 begin t...

SqlServer的更新鎖(UPDLOCK)

updlock 讀取表時使用更新鎖,而不使用共享鎖,並將鎖一直保留到語句或事務的結束。updlock 的優點是允許您讀取資料 不阻塞其它事務 並在以後更新資料,同時確保自從上次讀取資料後資料沒有被更改。這是sqlserver2000中對更新鎖的說明.當我們用updlock來讀取記錄時可以對取到的記錄...

SqlServer中的更新鎖 UPDLOCK

updlock.updlock 的優點是允許您讀取資料 不阻塞其它事務 並在以後更新資料,同時確保自從上次讀取資料後資料沒有被更改。當我們用updlock來讀取記錄時可以對取到的記錄加上更新鎖,從而加上鎖的記錄在其它的執行緒中是不能更改的只能等本執行緒的事務結束後才能更改.示例 測試 在另乙個查詢裡...