如何 防止多台电脑同时处理同一记录
时间:2011-12-01
来源:互联网
有一个表aa,假定有a,b,c三个字段. 三条记录,如下所示.
序号 字段1 状态
1 aa 未处理
2 bb 未处理
3 cc 未处理
命令如下
begin tran
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
declare @id int
select top 1 @id=序号 from aa where 状态='未处理' order by 序号
update aa set c='处理中' where 序号=@id
select @id
commit tran
多台电脑同时会处理aa表中的数据,通过"状态"来判断该记录是否正在被其它电脑处理中,并返回一条自己锁定的记录号,
主要是防止多台电脑同时处理同一记录.
以上程序能实现吗? (我对锁不大了解.)因为这个不好测试.所以请问各人大虾!
作者: group333 发布时间: 2011-12-01
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
设置隔离方式为读未提交?
设置隔离方式为读未提交?
作者: fredrickhu 发布时间: 2011-12-01
把那句 set 去掉试试.
作者: qianjin036a 发布时间: 2011-12-01
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28