Oracle DBでフラグを構成できること、特定のDBで実行されているすべてのselectクエリを、NOLOCK
ヒントが追加されたかのように実行できることを知っています。SQL Serverに似たようなものはありますか?
3 に答える
3
データベースをREAD_ONLYモードに設定すると、トランザクションルールの一部が確実に変更されますが、グローバルNOLOCKに近いものはないと思います。
編集
DELETE、INSERT、およびUPDATEを実行できるようにしたいが、リーダーをロックしたくない場合、またはヒントや分離レベルを指定する必要がない場合は、READ_COMMITTED_SNAPSHOTをオンにすることも検討できますが、セマンティクスはまったく同じではありません。 NOLOCKヒントとして。
于 2010-08-17T06:54:35.367 に答える
1
データベースごとのレベルではありません。ヒントまたはでのみ実行できますset transaction isolation level
。データベースを読み取り専用モードに設定できます。これにより、デフォルトでその効果が得られる場合がありますが、(名前が示すように)データベースへの書き込みができなくなります。
これは、定期的に更新されるデータベースに役立つ場合があります。データベースを読み取り専用に設定し、更新のために書き込み可能に設定してから、読み取り専用に戻します。
于 2010-08-17T06:53:09.780 に答える
0
データベース全体ではなく、クエリごとに次のことを行います。
SELECT a, b
FROM t1
WITH (NOLOCK)
WHERE t1.c = @value
また
SELECT a, b
JOIN t1
ON t1.id = t2.id
WITH (NOLOCK)
FROM t2
WHERE t2.c = @value
等
于 2010-08-17T07:00:33.060 に答える