トランザクションアイソレーションレベルについて

コレクション読み取りモードの設定は、Transact-SQL ステートメントの SET TRANSACTION ISOLATION LEVEL READ COMMITTED [または UNCOMMITTED] に対応しています。これはプライマリコレクション、2 番目のコレクション、および一覧をロードする照会に適用され、「検索するコレクション」の確認に適用されます。また、レポートを生成するバックグラウンドタスク照会、およびバックグラウンドタスクのストアドプロシージャにも適用されます。

基準となるシステム全体のトランザクションアイソレーションレベルは、 [デフォルト処理] フォームで設定されます。この設定(UNCOMMITTED または COMMITTED)は、 [バックグラウンドタスクの定義] フォームでレポートとストアドプロシージャごとに上書きできます。また、設計モードの[読み取りモード]フィールドからフォームレベルで設定を上書きすることもできます。

UNCOMMITTED 設定では、未確定のデータを読み取ることができます。ユーザは、同一データセットにアクセスするその他の時間のかかるトランザクションの完了を待つ必要はありません。これらのトランザクションが完了する前に照会を完了できます。ただし、未確定のレコードについては、照会でこのレコードが表示されてからユーザが保存して更新を試みるまでの間にロールバックされることがあります。未確定のデータが照会後のある時間にロールバックされた場合、楽観的なロックは失敗するため、ユーザはレコードを保存できません。ユーザはレコードをリフレッシュして有効なデータを取得してからデータを変更および保存する必要があります。

COMMITTED に設定している場合、照会では確定されたデータが読み取られ、共有ロックを取得できるデータだけが返されます。

関連トピック