2

SQL Server 2008 DB (通常の分離レベル) で同時に読み書きされるテーブルがあります。

同僚の 1 人は、そのテーブルに対する選択クエリで (updlock) を使用したクエリ ヒントがデッドロックを減らすかどうか疑問に思っていましたが、これをどうすればよいかよくわかりません。

通常の共有読み取りロックがタイムアウトを引き起こす場合、その状況では更新ロックもデッドロックを引き起こすと思いますか?! または、何か不足していますか?

皆さんありがとう!

4

1 に答える 1

0

更新ロックは共有ロックと互換性がないため、特定の状況下で同時に実行できる SELECT ステートメントは基本的に少なくなります。これはあなたの問題には役立たないと思います。

Read Commited Snapshot (RCSI) データベース オプションをオンにすることを検討しましたか? これは、最初にテスト環境でテストする必要があるものです。バージョンの保存のために tempdb にいくらかのオーバーヘッドが発生しますが、RSCI の楽観的ロックのおかげで、データベースのスループットが向上するはずです。

于 2014-01-06T00:43:59.473 に答える