求关于MSSQL行锁的疑惑
如题,大致的疑问就是这样的。说的更详细点:先上语句:……前面语句
1.begin tran
2.select * from [table] with(updlock) where id=1(比如是这样的)
3.waitfor delay "00:00:10"
4.update [table] set name='某某' where id=1
tran
……后面语句
比如有2个事务几乎同时到达那个设置行锁的这条语句SELECT * FROM [table] WITH (UPDLOCK) WHERE Id=1,但是后来的肯定不能操作,因为先来的已经把相应的行设置了行锁是吧,这个时候,后来的这条只能等待还是什么状态,我想问后来的这条事务走到了SELECT * FROM [table] WITH (UPDLOCK) WHERE Id=1这句后肯定走不下去,因为1的记录被锁定了,我不想等待这个10秒,跳出来走其他的代码?怎么实现?谢谢……
[ 本帖最后由 wxm198427 于 2013-12-6 10:22 编辑 ]