構文 - Parallel Data Pump

Teradata® Parallel Data Pump リファレンス

Product
Parallel Data Pump
Release Number
17.00
Published
2020年6月
Language
日本語
Last Update
2021-01-07
dita:mapPath
ja-JP/ioq1544831946920.ditamap
dita:ditavalPath
ja-JP/ioq1544831946920.ditaval
dita:id
B035-3021
Product Category
Teradata Tools and Utilities


次のような場合に当てはまります。

fieldname
入力レコード フィールドの名前。
  1. DML文から参照されている。
  2. FIELDコマンドのnullexpr、またはLAYOUTコマンドのcondition式から参照されている。
  3. IMPORTコマンドのAPPLY句のcondition式から参照されている。
fieldnameは、Teradata SQLの列名と同じ構成規則に従わなければなりません。
fieldnameは、NULLIFおよびフィールド連結式によって他のFIELDコマンド内で参照したり、IMPORTコマンドのAPPLY WHERE条件内で参照したりできます。
startpos
外部データ ソース内のデータ レコードにおけるフィールドの開始位置。
文字位置(先頭位置は1)を表わす符号なしの整数か、先行するフィールドの次に使用可能な文字位置を意味するアスタリスクを指定できます。複数のFIELDコマンドで同じ位置を指定することにより、入力レコードの位置を再定義しても構いません。
CONTINUEIF条件を使用して入力レコードを継続している箇所では、startposとして指定した符号なし整数は、継続標識フィールドを除去した後の最終連結結果での文字位置を指します。LAYOUTコマンドのconditionパラメータの説明を参照してください。
datadesc
フィールド内のデータのタイプと長さです。
Teradata TPumpにより、DML文の本文が参照するユーザー指定のフィールド名に従って、USING句が生成されます。
MACROCHARSET
文字フィールド専用(連結により構成された文字フィールドを含む)のオプションの句。文字タイプのフィールドにフィールド レベルのMACROCHARSETがある場合、TPumpは、指定された文字セットを使用して、対応するフィールドのマクロ生成DDLにCHARACTER SET句を生成します。
servercharsetname
サーバー ストレージの文字セット名。有効なサーバー ストレージ文字セット名については、次の2つのマニュアルを参照してください。Teradata Vantage™ - Advanced SQL Engine 国際文字セット サポート, B035-1125およびTeradata Vantage™ - SQLデータ定義言語 構文規則および例, B035-1144
nullexpr
影響を受ける列内にnull値を選択的に挿入するために使用する条件です。
条件は、fieldnameによって表現される任意の数のフィールドと、定数を含む条件式として指定します。条件式に含まれるfieldnames (1つまたは複数)はすべて、以下のいずれかを指定して定義しなければなりません。
  1. FIELDコマンドのstartposパラメータおよびdatadescパラメータ。
  2. FILLERコマンド
  3. TABLEコマンド。
指定した条件が真である場合、LAYOUTコマンドにINDICATORSオプションを指定したかどうかに関係なく、Teradata TPumpは標識付きのデータをデータベースに送ります。
ジョブ スクリプトの文字セットがジョブで使用されるクライアント文字セットと異なる場合(例えば、z/OSでUTF-8クライアント文字セットを使用する場合ジョブ スクリプトはTeradata EBCDIC形式でなければならず、またUTF-8形式のジョブ スクリプトではUTF-16クライアント文字セットが使用できる)、Teradata TPumpは、式を評価する前に、式で指定される文字列定数と式で参照されるインポート データを同じ文字セットに変換します。
例えば、クライアント文字セットがUTF-16でスクリプトの文字セットがUTF-8の場合に、次のコマンドが与えられたとします。
.field C1  *  varchar(20);
.field C2  *  varchar(40) nullif c1 = 'DELETED';
Teradata TPumpはC1フィールドのデータをUTF-8形式に変換し、それをUTF-8形式の'DELETED'と比較して評価結果を得ます。
同様に、クライアント文字セットがUTF-8でスクリプトの文字セットがTeradata EBCDICの場合に、次のコマンドが与えられたとします。
.field C1  *  char(20);
.field C2  *  rchar(40) nullif c1 = 'removed';
Teradata TPumpはC1フィールドのデータをUTF8形式からTeradata EBCDIC形式に変換し、それをTeradata EBCDIC形式の'removed'と比較して評価結果を得ます。
メインフレームでUTF-8クライアント セットを使用する場合は、必ずTeradata Vantage™ - Advanced SQL Engine 国際文字セット サポート, B035-1125にある定義を調べて、必要になる可能性のある特殊文字のコード ポイントを確認してください。EBCDICのバージョンが異なる場合、これらの文字列置換が必ずしも一致するとは限りません。

Teradata EBCDICとUnicode間のマッピングについては、Teradata Vantage™ - Advanced SQL Engine 国際文字セット サポート, B035-1125を参照してください。

他のFIELDコマンドのfieldname1パラメータを、nullexprの中で参照できます。
fieldexpr
以下に示す2つ以上の項目を連結します。
  • フィールド
  • 文字定数
  • 文字列定数
または、次のように組み合わせます。
fieldname1||'C'||fieldname2||'STRING'||fieldname3...
レイアウト内のフィールド名は一意である必要があり、フィールドのデータ型はCHARまたはVARCHARのいずれかである必要があります。ネストした連結はサポートされません。
fieldexprのすべての項目が固定文字である場合(例えば、VARCARではない場合)、結果フィールドのデータ型はCHAR(m)になります。ここで、"m"は、各構成要素項目の長さの合計です。
fieldexprの1つ以上の構成要素がVARCHARである場合、結果フィールドのデータ型はVARCHAR(m)になります。ここで、"m"は、各構成要素項目の長さの合計です。
ジョブ スクリプトの文字セットがジョブで使用されるクライアント文字セットと異なる場合(例えば、z/OSでUTF-8クライアント文字セットを使用する場合ジョブ スクリプトはTeradata EBCDIC形式でなければならず、またUTF-8形式のジョブ スクリプトではUTF-16クライアント文字セットが使用できる)、Teradata TPumpは、式で指定される文字定数と文字列定数をスクリプト文字セット形式からクライアント文字セット形式に変換してから、それらの定数を指定されたフィールドで連結します。
メインフレームでUTF8クライアント セットを使用する場合は、必ずTeradata Vantage™ - Advanced SQL Engine 国際文字セット サポート, B035-1125にある定義を調べて、必要になる可能性のある特殊文字のコード ポイントを確認してください。EBCDICのバージョンが異なる場合、これらの文字列置換が必ずしも一致するとは限りません。

Teradata EBCDICとUnicode間のマッピングについては、Teradata Vantage™ - Advanced SQL Engine 国際文字セット サポート, B035-1125を参照してください。

DROP
指定されたfieldnameから、指定された位置(複数可)にある文字を削除します。対象となるフィールドは、文字データ型でなければなりません。
Teradata TPumpは、指定された文字を削除したフィールドをVARCHARデータ型としてデータベースに提供します。
2つの削除アクションを指定する場合、それらは同じものであってはなりません。
FIELDコマンドが、2つ以上連結されたfieldnameフィールドとしてfieldnameを定義している場合、指定されたDROP句は、個々のfieldnameフィールドにではなく、連結された結果に適用されます。しかし、それぞれのfieldnameは以前のFIELDコマンドによって定義しなければならないので、それらのコマンドにDROP句を指定すれば、個々のフィールドに適用することができます。
KEY
BEGIN LOADコマンドのSERIALIZEパラメータが活動状態のときに、このフィールドを逐次化のためのハッシュ キーの一部にすることを指定するキーワード。これは、FIELDコマンドの末尾に指定します。
逐次化機能は、ロードされるデータの基本キーがこのKEYオプションによって指定されている場合にだけ、意味があります。