SQL*Loaderの実行結果の戻り値を取得する方法です。
方法
SQL*Loaderの実行結果戻り値を取得するには、 sqlldrコマンドを実行した直後に 「%errorlevel%」 値を取得すればOKです。
サンプル
例)SQL*Loderの実行結果の戻り値を取得する
- 実行例
- C:¥>sqlldr usr01/usr01@db01 control=c:¥syohin.ctl set exit_value=%errorlevel% echo %exit_value% 0
戻り値をexit_valueにセットして表示している例です
SQL*Loaderの戻り値
戻り値は数値で返ります。意味は以下の通りです。
戻り値 | 意味 |
---|---|
0 | 正常終了 |
1 | コマンド、制御ファイルの不正 |
2 | 一部データのロードに失敗 ※内容はbadファイルに出力 |
3 | OS関連のエラー(UNIX系OSの場合) |
4 | OS関連のエラー(Windows系OSの場合) |
解説
- %errorlevel%の値は、sqlldr実行直後でないと正しい値は取れないのでご注意ください。
(%errorlevel%は直前に実行したコマンドの戻り値が入るためです。) - 戻り値に0以外が返った場合は何かしらの問題が発生していますので、戻り値の値をもとに対応が必要です。