如果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(ta
SELECT top 1 @tmpId=Id FROM data rowlock WITH (tablockx) WHERE dstatus=0
去掉
SELECT top 1 @tmpId=Id FROM data WHERE dstatus=0
11个客户端去读共计1300个数据,有30几条读重复了,有几条甚至读了3次