SQLServer并发问题,先SELECT后UPDATE,避免并发脏读情况解决

时间:2023-03-09 02:08:55
SQLServer并发问题,先SELECT后UPDATE,避免并发脏读情况解决

在SQL Server中,需要对数据操作进行先SELECT 之后UPDATE,对于这样的操作,如果出现高并发,可能导致脏读情况的发生。不能保证数据的同步。

解决方案是在事物中对表进行加更新锁:

事务一:

begin tran 

select @count as count1
waitfor delay '00:00:30'

commit tran 

select * from tb_name

事务二:

begin tran

select @count as count2

commit tran 

select * from tb_name