これが私の希望する取引注文です:
- User1 はフィールドを選択し、操作を実行し、新しい値で更新します。
- User2 はフィールドを選択し、操作を実行し、新しい値で更新します。
- User3 はフィールドを選択し、操作を実行し、新しい値で更新します。
私が理解していることから、最初の選択は書き込みロックのみを実行し、2番目の選択は読み取りおよび書き込みロックを実行します。
どちらも使えるように見えますが、最初のケースでは、User2 はどのような値を読み取りますか? User1 が更新される前の初期値、または User1 が更新された後の値 (どちらが必要ですか)?
だから私は混乱しています.SELECT ... FOR UPDATEまたはSELECT ... LOCK IN SHARE MODEを使用する必要がありますか?