ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:php4 max+1で初番する場合 for updateは必要ですか?
困り度:
  • 困っています
AutoIncrementでなく、
あるコードの中の最大値+1で番号を初番する場合、

1.トランザクション開始
2.select max(no) from master where aru_code = 1 for update
3.insert into master values (2で取得したnoとaru_code=1)
4.トランザクション終了

というように、for updateで行ロックをかけないと
同じ番号が初番されてしまう可能性があるでしょうか?
質問投稿日時:08/03/22 10:51
質問番号:3884375
この質問に対する回答は締め切られました。

回答

良回答20pt

回答者:nora1962 あると思います。
実際、Command Line Clientを二つ立ち上げて、実行してみると
for updateをつけないとタイミングによっては同じ値を取得して
しまいます。
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/03/22 22:53
回答番号:No.1
この回答へのお礼この回答にお礼をつける(質問者のみ)