2013-07-23 82 views
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 

我覺得我的問題是從哪兒來的索引。

+0

問題是什麼? –

+0

當我嘗試在事務中使用ORDER BY時,它鎖定了整個表並且不允許相同的事務運行。 – user2358523

回答