始める無料で始める

テーブルでファントムリードを防ぐ

今日は、銀行のすべての顧客データを分析する必要があります。とても重要な情報なので、customers テーブル全体をロックして、このテーブルの内容を誰も変更できないようにしようと考えています。そうすることで、ファントムリードを防げます。

その情報を取得するためのスクリプトを用意し、取得した結果に対していくつかの数値計算を行います(この演習では計算処理自体は扱いません)。その後、同じデータをもう一度取得し、何も変わっていないことを確認したいと考えています。

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

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

コースを見る

演習の手順

  • ファントムリードを防ぐために、適切な分離レベルを設定してください。
  • トランザクションを開始してください。
  • トランザクションをコミットしてください。

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

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

-- Set the appropriate isolation level
___ ___ ___ ___ ___

-- Begin a transaction
___ ___

SELECT * FROM customers;

-- After some mathematical operations, we selected information from the customers table.
SELECT * FROM customers;

-- Commit the transaction
___ ___
コードを編集して実行