オートコミットのオン・オフの制御メモ

バッチのロールバックのところではまったのでメモ

DB2のオートコミットの制御

オンする場合(コンソール)
$ export DB2OPTIONS=-c
オンする場合(DB2クライアントコマンド行プロセッサー)
db2 => update command options using c on
オフする場合
$ export DB2OPTIONS=+c
オフする場合(DB2クライアントコマンド行プロセッサー)
db2 => update command options using c off

DB2SQL実行時のオートコミットの制御

$ db2 -c- "DELETE FROM HOGE"
$ db2 +c "DELETE FROM HOGE"

注意点

SQL実行時に「-c-」や「+c」を付け忘れて
SELECT文などを打ってしまうとその時点でコミットされるので、
引数をつけてSQLを流しているときは、常に引数をつけてSELECT文などを流すこと。

オプションの一覧表示

$ db2 list command options

     コマンド行プロセッサーのオプション設定

  バックエンド処理待ち時間 ()              (DB2BQTIME) = 1
  バックエンド接続の再試行カウント            (DB2BQTRY) = 60
  要求キュー待ち時間 ()                    (DB2RQTIME) = 5
  入力キュー待ち時間 ()                    (DB2IQTIME) = 5
  コマンド・オプション                      (DB2OPTIONS) =

  オプション  説明                                       現在の設定
 ------  ----------------------------------------  ---------------
      -a        SQLCA を表示する                           OFF
      -c        自動コミット                               ON
      -d        XML 宣言を検索して表示する                 OFF
      -e        SQLCODE/SQLSTATE を表示する                OFF
      -f        入力ファイルから読み込む                   OFF
      -i        XML データをインデント表示する             OFF
      -l        履歴ファイルにコマンドのログをとる         OFF
      -m        影響を受ける行数を表示する                 OFF
      -n        改行文字を除去する                         OFF
      -o        出力を表示する                             ON
      -p        対話式入力プロンプトを表示する             ON
      -q        空白文字と改行を保持する                   OFF
      -r        出力を報告書ファイルに保管する             OFF
      -s        コマンド・エラーで実行を停止する           OFF
      -t        ステートメントの終了に文字を設定する       OFF
      -v        現行コマンドをエコーする                   OFF
      -w        FETCH/SELECT 警告メッセージを表示する      ON
      -x        列見出しの印刷を抑制する                   OFF
      -z        出力ファイルにすべての出力を保管する       OFF