| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 488 人关注过本帖
标题:求关于MSSQL行锁的疑惑
只看楼主 加入收藏
wxm198427
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:3
帖 子:561
专家分:25
注 册:2008-6-30
结帖率:52.7%
收藏
已结贴  问题点数:6 回复次数:2 
求关于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 编辑 ]
搜索更多相关主题的帖子: 先来 where color 
2013-12-06 10:20
wxm198427
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:3
帖 子:561
专家分:25
注 册:2008-6-30
收藏
得分:0 
回复 楼主 wxm198427
没有人知道吗?
2013-12-09 11:14
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
收藏
得分:5 
这里既然用到了事务去控制,
为什么又用行锁呢,
这样操作对数据在执行事务回滚时候是否会有问题!
仔细斟酌下再下手!!!

大家都是朋友,有空就来坐坐!
2013-12-09 13:39
快速回复:求关于MSSQL行锁的疑惑
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024104 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved