笔记200 自定义锁实现

笔记200 自定义锁实现

 1 --自定义锁实现
 2 --在新建查询窗口一中
 3 --会话A:更改数据表orders中指定的记录
 4 USE TransactionTestDb
 5 GO
 6 SELECT * FROM dbo.Orders
 7 GO
 8 EXEC  sys.sp_getapplock  @Resource = N'testlock', -- nvarchar(255)
 9     @LockMode = 'exclusive', -- varchar(32) 排他锁
10     @LockOwner = 'session', -- varchar(32)
11     @LockTimeout = -1 -- int
12    
13 UPDATE dbo.Orders SET  Qutantity=Qutantity +100
14 FROM dbo.Orders
15 WHERE OrderNo =1
16 
17 WAITFOR DELAY '00:00:02'
18 
19 EXEC sys.sp_releaseapplock  @Resource = N'testlock', -- nvarchar(255)
20     @LockOwner = 'session' -- varchar(32)
21 
22 
23 
24 GO
25 
26 --在新建查询窗口二中
27 --会话B:查询数据表orders中的详细记录
28 USE TransactionTestDb
29 GO
30 EXEC sys.sp_getapplock  @Resource = N'testlock', -- nvarchar(255)
31     @LockMode = 'exclusive', -- varchar(32)
32     @LockOwner = 'session', -- varchar(32)
33     @LockTimeout = -1 -- int
34 SELECT * FROM dbo.Orders
35 GO

 

posted @ 2013-08-04 13:16  桦仔  阅读(372)  评论(0编辑  收藏  举报