Teradata MultiLoadが正しく処理できないデータ行を検出した場合、以下の2つのエラー テーブルのいずれかに行が作成されます。これらのエラー テーブルは、Teradata MultiLoadジョブのターゲット テーブルごとに作成されます。
- 取得エラー テーブル
- 適用エラー テーブル
各エラー表の行は、問題の原因を特定する情報が記載された8つの列で構成されています。加えて、取得エラー表には障害レコードが含まれ、アプリケーション エラー表には、ターゲット表のミラー イメージが含まれています。
アプリケーション エラー テーブルには、エラー情報に続いてターゲット テーブルのミラー イメージが記録されるため、Teradata MultiLoadジョブのターゲット テーブルにはエラー テーブルの列と同じ列名を指定できません。列名が重複すると、データベースはTeradata MultiLoadジョブを終了し、エラー メッセージ3861を返します。
記録エラーに関する注:
- BEGIN MLOADコマンドで設定したエラー制限値は、Teradata MultiLoadインポート タスクの取得フェーズ中にエラー表に記述される拒否記録数を制限するエラーしきい値に該当します。
- 関連する式がなく、ターゲット表にデータをロードする前に必要とされる変換が多くても1つの場合は、取得フェーズでデータ変換が実行され、変換されたデータが作業表にロードされます。つまり、データまたは変換に関するすべてのエラーは、取得フェーズで検出されます。
- ただし、関連する式があるか、ターゲット テーブルへのデータの挿入前に複数のレベルの変換が必要な場合、基本索引フィールドに対する式の評価または変換は、取得フェーズで実行され、残りのフィールドに対する変換はアプリケーション フェーズまで繰り延べになります。つまり、基本索引フィールドのすべてのエラーは取得フェーズで検出され、残りのフィールドのすべてのエラーはアプリケーション フェーズで検出されます。
- ユーザーは必要な列名(最大128文字)を定義できますが、行がエラー表に格納される場合、データベースは120文字を超える列名を切り捨てます。