1. 学ぶ
  2. /
  3. コース
  4. /
  5. PostgreSQL におけるトランザクションとエラー処理

Connected

演習

分離レベルを使う

動画で見たように、個々のトランザクションごとに分離レベルを選べることが重要な場合があります。これを行う最適な方法は、BEGIN TRANSACTION の別名であり、何かが異なることを明確にできる START TRANSACTION を使うことです。トランザクション開始時に ISOLATION LEVEL を指定できます。

ここでは REPEATABLE READ を使います。これはダーティリード、再読不能読取り、ファントムリードから保護してくれます。FFEIC のデータでは、RCON2210 は要求払預金(demand deposits)を表し、未決済の当座預金、銀行発行の小切手、未記帳の入金を追跡します。理由のいかんにかかわらず資金流出が起きた場合、銀行にとって負債となり得ます。要求払預金が 100,000,000ドルを超える銀行をすべて見つけましょう。

指示

100 XP
  • repeatable read でトランザクションを開始します。
  • 要求払預金で RCON2210 が 100,000,000ドルを超えるすべてのレコードを選択します。
  • その後も RCON2210 が引き続き 100,000,000ドルを超えるすべてのレコードを選択します。
  • トランザクションをコミットします。