1
我想从我的数据库中选择代码,但我不需要另一个人前来,选择相同的代码,然后我有机会更新它们。我试过只使用updlock,这解决了我的重复销售问题,但它增加了死锁问题。所以现在我正在使用(UPDLOCK,READPAST),直到我尝试在我的语句中使用ORDER BY时,它的工作情况非常好。使用(UPDLOCK,READPAST)和ORDER BY - 不工作?
微软SQL 2005
BEGIN TRANSACTION
SELECT Top 10 ID FROM dbo.CODES
with (UPDLOCK, READPAST)
where ItemNo = 'type-2' AND Sold = 0
order by cast(NowStamp as DateTime) ASC
COMMIT TRANSACTION
我觉得我的问题是从哪儿来的索引。
问题是什么? –
当我尝试在事务中使用ORDER BY时,它锁定了整个表并且不允许相同的事务运行。 – user2358523