- 230 名前:nobodyさん mailto:sage [2021/06/24(木) 22:33:25.32 ID:???.net]
- select for updateというのはSELECTした行をロックする機能である
通常の更新系ぐるぐるSQLというのはいわば「同時の処理が走るわけがない」という楽観論にもとづき実行される 結果、ぐるぐる中に他の処理が走ると整合性がとれなくなるのだ しかし!select for updateは更新行をあらかじめ全てロックできるのだ!! その間に1行ずつループですべて更新して最後にコミットだ!! 更新時に大胆に複数行ロックを行い怒涛のループで更新だ! これが悲観ロックぐるぐる行進なのだ!
|

|