set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[test1]
as
declare @thisID as bigint
BEGIN TRANSACTION
SELECT top 1 @thisID=id FROM tab1 ROWLOCK WHERE flag=0
update tab1 set flag=1 where id=@thisID
select * from tab1 where id=@thisID
COMMIT TRANSACTION
set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER proc [dbo].[test1] as declare @thisID as bigint BEGIN TRANSACTION SELECT top 1 @thisID=id FROM tab1 ROWLOCK WHERE flag=0 update tab1 set flag=1 where id=@thisID select * from tab1 where id=@thisID C