次の表に、DML LABELコマンドを使用する際の考慮事項を示します。
対象 | 使用上の注意 |
---|---|
重複行チェックの省略 | 表がマルチセット表である(行の重複が許可される)場合、または固有の基本索引が表に含まれる(固有性テストが重複行チェックの代りに行われる)場合、重複行チェックは実行されません。 |
DO INSERT FOR ROWSオプション | Upsert操作の規則に準拠することにより、さまざまなDO INSERT ROWSオプションを使用できます。 Upsert操作を使用すると、Teradata MultiLoadでは1回のデータ受渡しで以下の両方の操作を行なうことができます。
Upsert操作を行なわない場合、次のどちらかの処理を行なわなければなりません。
|
インポート タスク | インポート タスクでは、1つのDML LABELコマンドに、最高5種類のエラー処理オプションを指定できます。例えば、次のように指定できます。.DML LABEL COMPLEX IGNORE DUPLICATE INSERT ROWS MARK DUPLICATE UPDATE ROWS IGNORE MISSING UPDATE ROWS MARK MISSING DELETE ROWS DO INSERT FOR MISSING UPDATE ROWS; |
MARK MISSING UPDATE ROWSオプション | DO INSERT ROWSオプションと同時にMARK MISSING UPDATE ROWSを指定すると、更新に失敗したすべてのレコードが、その後INSERT文が実行されたことを示すエラー コードと共にtname4アプリケーション エラー表にTeradata MultiLoadによって記録されます。 その後の挿入操作が失敗すると、挿入レコードもアプリケーション エラー表に記録されます。 ただし、Upsert操作のデフォルトは、NOT MARK MISSING UPDATE ROWSです。Upsert機能では、更新操作に失敗すると挿入操作が発生するためです。 Upsert操作の更新部分の失敗は、それ自体ではエラーとはならないため、エラーとして処理されません。 |
MARK MISSING DELETE ROWS オプション | MARK MISSING DELETE ROWSオプションは、DO INSERT FOR ROWSオプションと同時に使用した場合何の効果もありません。 |
Upsert機能 | Upsert機能を使用する場合は、以下の点に注意してください。
P1がchar(5)でf1がchar(6)の場合、Upsertはキャンセルされます。 |