国産DIコンテナSeasar その15at TECH国産DIコンテナSeasar その15 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト200:デフォルトの名無しさん 09/05/26 23:36:49 >>199 たまには動物園に行きたくなるだろ? 201:デフォルトの名無しさん 09/05/26 23:42:34 >>193 俺もupdateのwhere句に条件加えればいいじゃんと思うんだが 202:デフォルトの名無しさん 09/05/26 23:57:59 >>199 まあそういうな s2コミッタ=素人 s2ユーザ=ど素人 なんだからさw 203:181 09/05/26 23:58:45 >>193 >>201 select .... for update してレコードが取得できたかどうかをせずに、 いきなり update 文を実行した場合、 update 文の結果(PreapredStetement#exeucte())で、0 が返って来た場合、 version_id がずれて更新できなかったのか、 そもそも、当該受注番号のレコードが、一瞬先に別ユーザによって消されたのかわからない。 select .... for update してレコードが取得できたかチェックしておいて、レコードが得られなかったら、 「他のユーザがすでに更新しました or 他のユーザがそのデータを消しました」 とエラーメッセージを出すことが出来る。 とここまで書いたが、いきなり update 文を実行して、update 文の結果が 0 だったら、 同じようなメッセージを出せばいいのか。 画面で、ユーザにもう一度画面を開いてもらい、当該受注番号のレコードが消されたら、 画面を開き直したときに、そのレコードは現れなくなるし。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch