DBリンクキット:COBOL85アプリケーションによるCOMMIT/ROLLBACKを禁止し、すべてDBリンクキットの表対応テーブルの設定による自動COMMITを採用したいと思っています。DBリンクキットによるCOMMIT発行は指定された回数ごとに1回実行されるようですが、実際の更新回数が、指定された回数に達しない状態で COBOL85アプリケーションがSTOPRUNとなった場合、DBリンクキットがCOMMIT命令を発行するのはどのタイミングでしょうか?また、更新結果を有効にするために、COBOL85ア
質問内容
COBOL85アプリケーションによるCOMMIT/ROLLBACKを禁止し、すべてDBリンクキットの表対応テーブルの設定による自動COMMITを採用したいと思っています。
DBリンクキットによるCOMMIT発行は指定された回数ごとに1回実行されるようですが、実際の更新回数が、指定された回数に達しない状態で COBOL85アプリケーションがSTOPRUNとなった場合、DBリンクキットがCOMMIT命令を発行するのはどのタイミングでしょうか?また、更新結果を有効にするために、COBOL85アプリケーションによるCOMMIT発行は必要でしょうか?
回答内容
指定された更新回数に達しない状態でCOBOL85アプリケーションがSTOPRUNとなった場合、DBリンクキットが自動的にCOMMIT命令を発行して、ファイルをクローズします。
(CLOSE命令発行時やCOBOL85アプリケーション終了時には、内部的にCOMMIT命令を実行してから、ファイルのクローズを行います)
DBリンクキットヘルプ(以前のバージョンとの相違点→COMMITモード「自動」でCLOSE命令が発行されなかった 場合の問題修正)にも記述してありますので、そちらもご参照ください。
上記の通り、COBOL85アプリケーションの終了時には、DBリンクキット自身が自動的にCOMMIT命令を発行するので、COBOL85アプリケーションによるCOMMIT発行は必要ありません。ただし、最後の更新命令からファイルのクローズ(アプリケーションの終了)まで、かなり間があるようなアプリケーションや、各更新命令の間が長いアプリケーション(画面入力するような)では、その間に不慮の事故 (例えば、マシンのシャットダウン/DBリンクキットやDBのサービスダウン等)があった場合、最後の更新内容がCOMMITされない恐れがありますので、明示的に最後の更新命令を発行した直後にアプリケーションからCOMMIT命令を発行した方が無難かもしれません。
-
コンテンツID:
3150003306
-
公開日:
1998年12月01日
-
最終更新日:1998年12月01日
アンケート
サポート情報充実のためアンケートにご協力をお願いいたします。
コメント欄: