1

Oracleでは次のとおりです。

LOCK TABLE employees IN EXCLUSIVE MODE WAIT 10;

従業員テーブルでは、最初に削除してから挿入する必要があります。

LOCK TABLE employees ..
DELETE FROM employees ..
INSERT INTO employees ...

ms sql serverのLOCKの同等のステートメントは何ですか?

ありがとう

4

1 に答える 1

2
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE 

BEGIN TRANSACTION

DELETE FROM employees .. 
INSERT INTO employees ... 

COMMIT TRANSACTION

delete ステートメントが成功してテーブルを排他的にロックするか、失敗します (ロックが別の接続によって既に保持されている場合)。

ところで、このような極端な排他的ロックを回避することをお勧めします。同じ結果で使用できる可能性がある、より積極的でない分離レベルが他にもあります。

トランザクション分離レベルの設定を参照してください

于 2012-09-14T05:14:01.970 に答える