暂无图片
sqlserver并发事务出现死表情况
我来答
分享
暂无图片 匿名用户
sqlserver并发事务出现死表情况

在使用sqlserver2014/2016数据库时,项目有个update更新表操作,该操作有些类似计数器,会频发更新数据,会提示“事务与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品”;
测试如下几种方式
1.通过设置了SNAPSHOT_ISOLATION和 READ_COMMITTED_SNAPSHOT选项为ON,没有实质性性能优化;
2.通过在select 添加with(nolock)或者with(readpast)方式,会降低并发情况,可能存在幻读;
3.应用层面提升并发量事务提交,提交数据量上来还是存在锁表情况;


还有其他好方法嘛?难道只能降低应用并发量?缩小事务规模,加快事务提交?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
李宏达

改业务,计数器换成序列会好很多吧,哪有同一时间频繁更新相同数据的业务逻辑。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏