asq985 2011年04月11日
sql rowlock WITH (tablockx)
如果data表里有N条数据

存储过程:

declare @tmpId bigint
BEGIN TRANSACTION

SELECT top 1 @tmpId=Id FROM data rowlock WITH (tablockx) WHERE dstatus=0
update data set dstatus=1 where Id=@tmpId
select * from data where Id=@tmpId

COMMIT TRANSACTION



如果就使用 rowlock with(tablockx) 是否会出现脏读,重复读?(多个进程同时调用这个存储过程)

谢谢!(只有23分了,哭~~~~~~)
...全文
181 点赞 收藏 5
写回复
5 条回复

还没有回复,快来抢沙发~

发动态
发帖子
疑难问题
创建于2007-09-28

9297

社区成员

12.1w+

社区内容

MS-SQL Server 疑难问题
社区公告
暂无公告