始める無料で始める

ブロックを回避する

transactions テーブルから口座1のすべての入出金履歴を取得しようとしています。ところが、その情報を取得しようとすると別のトランザクションにブロックされ、結果が返ってきません。データベースは READ COMMITTED の分離レベルで構成されています。

分離レベルを変更せずに、今すぐ情報を取得できるように SELECT クエリを変更できますか? その際、transactions テーブルの未コミットデータを読み取ることになります。

この演習はコースの一部です

SQL Server におけるトランザクションとエラー処理

コースを見る

演習の手順

  • ブロックを回避するようにスクリプトを変更します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

SELECT *
	-- Avoid being blocked
	FROM transactions ___ (___LOCK)
WHERE account_id = 1
コードを編集して実行