PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
13540 00/10/13 13:33:46 RE(2):PB6.5: UPDATE関数の更新フラグについて By snow
13529 00/10/12 18:55:18 RE(1):PB6.5: UPDATE関数の更新フラグについて By Mika★
13525 00/10/12 16:13:42 PB6.5: UPDATE関数の更新フラグについて By snow

カテゴリ:データウィンドウ
日付:2000年10月13日 13:33 発信者:snow
題名:RE(2):PB6.5: UPDATE関数の更新フラグについて

Mika★さん、こんにちは。

>snowさん、こんばんは。

>>(トランザクション開始)
>>dw_1.update(TRUE,FALSE)     <-成功
>>dw_2.update(TRUE,FALSE)     <-失敗
>>
>>// dw_2の更新が失敗した為
>>rollback;
>>
>>となると思うのですが、
>>dw_1.update(TRUE,TRUE)
>>dw_2.update(TRUE,TRUE)
>>とした場合とどう違うのでしょうか。

>後者の場合だと
>dw_1の更新に成功すると、自動的に更新フラグが全てリセットされ
>全ての行・カラムのステータスがNotModified!になってしまいます。
>その後、dw_2の更新に失敗してROLLBACKし
>失敗と思われる箇所を修正して、再度更新処理をしようとしても
>dw_1は、全てのステータスがNotModified!になってしまっていますから
>dw_1の分に関しては、データベースへの更新は全く行われずに
>dw_2の分のみ、更新されることになり
>データの不整合が生じることにもなり得ます。

>前者の場合は、dw_1, dw_2ともに更新に成功したら
>COMMIT後に、ResetUpdate関数により、手動で更新フラグをリセットします。

テストしてびっくりしました。気づいてよかったです。
本当にありがとうございました。
これからすべて修正です。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS Sybase Open Client/C 10
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Sybase SQL Server System 11
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.