アンロード・コマンドおよび再ロード・コマンドのエラーには、いくつかのタイプがあります。
- 徴候
- アンロード・コマンドまたは再ロード・コマンドの配置時にエラーが発生した場合は、SQL コードは常に -22220 です。
このコードは、IBM® Data Server Client でスクリプトのエラーが検出されたことを意味します。エラーの正確な理由は、エラー・コードによって指定されます。
エラー・コードは「データ出力」ビューに表示されます。
特定のエラー・コードの詳細は、「DB2® メッセージ・リファレンス」の資料を参照してください。
- 問題解決
再ロード・コマンドのエラー- エラー・コード 3088
- データベースの列名にロードするように指定されたソース列はデータベースの列とは互換性がありませんが、データベースの列は NULL 可能ではありません。
Source table tblA: col1 int, col2 int, col3 varchar(5), col4
num(6, 2)
Target table (table being loaded) tblB: col2 int, col3 varchar(5),
col4 num(6, 2) not null.
アンロード中にすべての行を選択した場合には、データ・タイプの不一致のため、再ロード中にターゲット表の col4 への VARCHAR 値の挿入は失敗します。
以下の方法でこの問題を修正します。
- データ・ファイルを編集します。
- 「データ保存のカスタマイズ」ウィザードを使用して、アンロード・ステートメント内の tblA から最後の 3 列を選択します。
このウィザードを使用して、必要に応じて列関数を追加します。
- エラー・コード 3124
- 行「2」、列「3」のフィールド値は PACKED DECIMAL 値に変換できませんが、ターゲット列は NULL 可能ではありません。
行はロードされませんでした。
- エラー・コード 3196
- 入力ファイルが見つかりませんでした。
アンロード・コマンドが実行されたリモート・マシンにデータ・ファイルが置かれている場合には、データ・プロジェクト・エクスプローラーから再度再ロード・コマンドを発行する必要があります。
再ロード・コマンドが実行されるマシンにデータ・ファイルが転送されていることを確認してから、データ・プロジェクト・エクスプローラーから再ロード・コマンド・ファイル (例えば、xxx_import.chx) を選択し、右クリックして「SQL の実行」を選択することにより再ロードを完了します。
アンロード・コマンドのエラー- エラー・コード 3025
- ファイル名またはパスを指定するパラメーターが無効です。再ロードおよびアンロード・コマンドはリモート・システムで実行されると考えられるためIBM Data Studio による、指定されたパスが存在することの確認は行われません。データ損失を回避するため、パスが有効であることを確認してください。
また、スクリプトを配置する前にプロジェクト・エクスプローラーからアンロード・コマンドを実行してください。
- エラー・コード 3304
- 表が存在しません。
アンロード・コマンドは、表がドロップされる前に発行される必要があります。
スクリプトを配置する前に、変更管理スクリプト・エディターの「コマンド」セクションでコマンドの順序を検証する必要があります。
デフォルトのデータ・ファイル・タイプは DEL です (区切り付き ASCII。多くのデータベース・マネージャーおよびファイル・マネージャーとのやり取りで使用)。必要であれば、ファイル・タイプを IXF に変更できます。
エラー・コードが「データ出力」ビューに表示されない場合は、管理通知ログ・ファイル (db2dasdiag.log) でそのコードを確認できます。
このファイルの場所などについて詳しくは、DB2 インフォメーション・センターを参照してください。