我需要在原始sproc中進行以下步驟序列。下面是一個簡化的近似例如:製作SQL語句的序列原子
Customesrs表(客戶ID,...,OrderMax)
產品表(產品編號,...)
AvailableProducts查看(產品編號和其他屬性)
訂單(客戶ID,的OrderId)
- 選擇Customers表
@OrderMax
- 選擇
TOP @Ordermax
從AvailableProducts查看 - 更新一些prope在產品rties基於所述結果集步驟2
- 插入訂單到訂單表(基於該結果設定步驟2的)
- 返回/該插入
據我所知選擇的訂單,整個事情和UPDLOCK必須有一個交易。需要保證的是產品表的更新和訂單表的插入。但是,從這兩個表構建的視圖中查詢行。
什麼是正確的方式使這個序列原子和安全更新和插入上述表?
你的問題是什麼? – JNK
你自己的答案哪一部分你不明白?而且你不太可能需要使用非標準的鎖類型,所以UPDLOCK可能會被忽略。 – dkretz