17.10 - 使用上の注意 - MultiLoad

Teradata® MultiLoadリファレンス

Product
MultiLoad
Release Number
17.10
Release Date
2021年6月
Content Type
プログラミング リファレンス
Publication ID
B035-2409-061K-JPN
Language
日本語 (日本)

次の表に、INSERT文を使用する場合の考慮事項を記載します。

INSERT使用上の注意
対象 使用上の注意
ANSI/SQL DateTime指定 Teradata SQLのCREATE TABLE文ではANSI/SQLのDATE、TIME、TIMESTAMP、およびINTERVALのDateTimeデータ型を使用でき、INSERT文の中で列/フィールド修飾子として指定できます。FIELDコマンドで列/フィールド名を指定する場合には、そのデータ型を固定長CHARデータ型に変換する必要があります。
オブジェクトの制限 INSERT文に指定できるtnameオブジェクトは1つだけで、BEGIN MLOADコマンドのターゲット オブジェクトとして事前に定義されている必要があります。

tnameオブジェクトがビューの場合、結合が指定されたビューは使用できません。Teradata MultiLoadは単一表のコマンドに対してのみ動作するため、INSERT文に結合を含むことはできません。

必要な権限 INSERT文を使用するためには、tnameの表またはビューに対するINSERT権限が必要です。
適用可能なDML文の指定 適切なDML文を指定する1つの方法は、各フィールド名を、フィールドのデータが適用される列の名前と関連させることです。

別の方法は、データベースに送られるレコードの最初の非フィラー フィールドを相手表の最初の列に、2番目の非フィラー フィールドを2番目の列に順番に適用する方法です。

どちらの方法でも、明示的またはデフォルトを使用してすべての列に値を指定する必要があります。

Unicodeデータの使用 以下のセッションのUnicodeデータを使用する場合には、tname.*バージョンのINSERT文は使用しないでください。
  • KATAKANAEBCDICセッション
  • 文字セット名の末尾が_0Iのセッション
  • マルチバイト文字をサポートしていない文字セット(例えば、ASCIIやEBCDICなど)を使用するすべてのセッション

上記の指定を行なうと、参照する表からフィールド名が返され、さらに、後続のロード操作用のUSING句を作成するためにTeradata MultiLoadが内的に使用するバイト/文字数が返されます。

クライアント システムとデータベースの間でCHARとVARCHARのデータをインポートおよびエクスポートするとバイト数と文字数の変換が行なわれるため、内部生成されるUSING句では入力データ ストリームの構造が正しく反映されません。