17.10 - 構文 - FastExport

Teradata® FastExportリファレンス

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

IMPORTコマンド構文は、FastExportユーティリティがメインフレーム接続のクライアント システム、またはワークステーション接続のクライアント システムのどちらで実行されているかによって決まります。いくつかの構文要素は両構成に対して共通です。しかし、その他の構文要素は各構成に固有です。





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

INFILE fileid
クライアント システム上の入力ファイルです。
ファイルは、クライアント システムDDまたは同等の文で指定されます。
  • UNIX OSおよびWindowsでは、fileidはファイルのパス名です。

    パス名に空白文字が埋め込まれている場合、パス名を単一引用符または二重引用符で囲む必要があります。

    パス名が単一引用符で囲まれていて、その中に単一引用符が埋め込まれている場合は、埋め込まれた単一引用符よりも先にエスケープ文字(単一引用符)を指定する必要があります。同様に、パス名が二重引用符で囲まれていて、その中に二重引用符が埋め込まれている場合は、埋め込まれた二重引用符よりも先にエスケープ文字(二重引用符)を指定する必要があります。

    パス名に単一または二重引用符が含まれている場合、パス名はそれらの引用符で囲まれていなければなりません。

  • z/OSでは、fileidはDDNAMEです。
  • fileidは、通常のファイルを参照する必要があります。特に、パイプはサポートされていません。
AXSMOD name
データのインポートに使用するアクセス モジュール ファイル名。これらのアクセス モジュールには以下の項目が含まれます。
  • Teradata Access Module for OLE DB: Windowsプラットフォームではoledb_axsmod.dll
  • Teradata Access Module for JMS(AIX、Solaris SPARC、Solaris Opteron、Linuxではlibjmsam.so、Windowsプラットフォームではlibjmsam.dll)。

カスタム アクセス モジュールを使用する場合は個人共有ライブラリのファイル名を使用できます。

ワークステーション接続またはメインフレーム接続のクライアント システムにあるディスク ファイル、またはメインフレーム接続のクライアント システムにある磁気テープ ファイルをインポートする場合には、AXSMODオプションは必要ありません。

特定プラットフォームのTeradata Access Module for OLE DBおよびJMSのTeradata Access Module for JMSの指定については、Teradata® Tools and Utilities Access Moduleリファレンス, B035-2425を参照してください。

init-string
アクセス モジュール用の任意選択初期設定文字列です。
初期設定文字列には二重引用符を含めることができますが、単一引用符を含めることはできません。
INMOD modulename
入力データを処理するための任意選択ユーザー作成ルーチンです。
z/OSでは、modulenameはロード モジュールの名前です。UNIXおよびWindowsクライアント システムでは、INMOD実行可能コード ファイルのパス名です。
INFILEfileidおよびINMOD modulenameパラメータを両方とも指定すると、FastExportは入力ファイルを読み取り、データをINMODルーチンに渡して処理します。
INFILE fileidパラメータを指定しないと、FastExportは、INMODルーチンが入力データ レコードを提供すると予期します。
FastExport/INMODルーチン インターフェースで説明したように、FastExportは、指定ルーチンに2つのパラメータを提供します。
モジュールが現在のディレクトリにある場合、UNIXオペレーティング システムのバージョンによっては、INMOD modulenameの前に./という接頭辞を追加しなければならない場合があります。
INMODモジュールがメッセージをstdoutに出力する場合、INMODが使用する文字セットは、Teradata FastExportが使用する文字セットには依存しません。stdout上の表示では、文字セットを混合させることができます。例えば、IMMODがASCIIでメッセージを出力し、Teradata FastExportがUTF16でメッセージを出力することが可能です。
USING (parms)
INMODルーチンに渡す可能性のあるパラメータが含まれている文字列です。
  • parms列には、1つ以上の文字列を含めることができ、各文字列はその前後をアポストロフィか引用符で区切る。
  • parms列の最大サイズは1 Kバイト
  • 区切り記号列内の括弧は、アルファベット文字と同じ構文上の意味を持つ。
  • parms列をINMODルーチンに渡す前に、FastExportは、以下のものを単一のブランク文字で置き換える。
    • 各コメント
    • 連続した一連の空白文字(区切り列の外に指定されているブランクやタブなど)
  • parms列全体は括弧で囲む必要がある。メインフレーム接続クライアント システムでは、括弧は、INMODルーチンに渡される列に含まれている。
parms列には、FastLoadの前のPASCALバージョン(プログラムFASTMAIN)用に作成したINMODルーチンのFDLINMODを指定する必要があります。
FORMAT…
入力ファイルのレコード形式です。以下のオプションがあります。
  • FASTLOADは、各レコードが、レコード終了マーカー(X'0A'またはX'0D')を伴なう、2バイトの整数 nとそれに続くnバイトのデータであることを指定します。
  • BINARYは、各レコードが、2バイトの整数nとそれに続くnバイトのデータであることを指定します。
  • TEXTでは、各レコードで、任意のバイト数の後にレコード終了マーカー(X '0A'かX '0D'のいずれか)が指定されるよう規定されています。

    TEXTフォーマットは数値データをサポートしません。EXPORTコマンドのMLSCRIPTオプションを同時に使用する場合は、TEXTを指定しないでください。

  • UNFORMATは、各レコードが、クライアントで変更されることなくCLIv2から受け取ったデータのままインポートされることを指定します。
  • VARTEXTは、各レコードが、区切り記号で各フィールドが区切られた可変長テキスト レコード フォーマットであることを指定します。
上記のすべてのFORMATオプションは、UNIXおよびWindowsプラットフォームだけに適用されます。VARTEXTオプションはメインフレームに適用されます。UNIXおよびWindowsプラットフォーム用のデフォルトFORMATオプションはFASTLOADです。メインフレーム用のデフォルトのFORMATは"use record boundaries"です。つまり、入力データは1レコードずつ読み込まれ、各レコードにLAYOUTが適用されます。
‘c’
入力データ ソースの可変長テキスト レコードのフィールドを区切る区切り文字を指定します(省略可)。
区切り文字には1文字または複数文字の文字列を指定できます。
区切り文字を指定しない場合、パイプ文字(|)1文字がデフォルトとなります。
スクリプトの文字セットがクライアントのセッション文字セットと異なる場合、区切り文字は、Data Connectorに渡される前に、スクリプトの文字セットからクライアントのセッション文字セットに変換されます。
データに使用されている文字列を区切り文字として使用することはできません。タブ文字以外の制御文字は区切り文字として使用できません。
DISPLAY ERRORS
[任意選択]エラーを生成する入力データ レコードを標準エラー ファイルに書き込むキーワード指定です。
NOSTOP
[任意選択]可変長テキスト レコードに関連したエラー条件に応答してFastExportが終了することを禁止するキーワード指定です。
LAYOUT layoutname
前のLAYOUTコマンドで指定されている、ファイル レイアウト記述の識別子です。
EFILE <efilename>
[任意選択]エラーを生成する入力データ レコードをユーザー指定のエラー ファイルに書き込むキーワード指定です。ユーザーがエラー ファイル名を指定しない場合、デフォルトではワークステーション接続プラットフォームの場合は標準のエラー ファイルが、チャネル接続プラットフォームの場合はSYSOUTがエラー指定先となります。
TRIM
任意選択のキーワード。可変長テキスト レコード内のフィールド値を削減(トリム)できるかどうかを指定します。次のいずれかのキーワードが後に続く必要があります。NONE、LEADING、TRAILING、またはBOTH。
NONE
キーワードTRIMの後に続けることができます。フィールド値をトリムしないことを指定します。TRIM NONEは、トリム処理のデフォルトの動作であり、TRIMをまったく指定しない場合と同じになります。
LEADING
キーワードTRIMの後に続けることができます。フィールド値の先行文字をトリムすることを指定します。トリム文字の指定については、下記の'p'の項を参照してください。
TRAILING
キーワードTRIMの後に続けることができます。フィールド値の終了文字をトリムすることを指定します。トリム文字の指定については、下記の'p'の項を参照してください。
BOTH
キーワードTRIMの後に続けることができます。フィールド値の先行文字と終了文字をトリムすることを指定します。トリム文字の指定については、下記の'p'の項を参照してください。
'p'
入力データ ソースの可変長テキスト レコードのフィールド値の中からトリムする文字を指定します(省略可)。キーワードLEADING、TRAILING、またはBOTHの後に指定します。
トリム文字の規則は次のとおりです。
  • トリム文字は1文字でなければなりませんが、シングルバイトまたはマルチバイト文字のいずれも使用できます。 これはクライアント セッション文字セットで表わされます。
  • 'p'を指定しない場合、デフォルトのトリム文字はブランク(空白スペース)文字になります。
  • トリミングは、引用符で囲まれていないフィールド値に対しても引用符で囲まれたフィールド値に対しても実行できます。
  • フィールドに含まれている文字が1つ以上のトリム文字だけしかない場合、トリミング後のそのフィールドはゼロ長のVARCHARになります。DEFINEコマンドでNULLIFオプションを使用して、NULLに設定することが可能です。
QUOTE
任意選択のキーワード。可変長テキスト レコード内のフィールド値に、まったく引用符を付けない(キーワードNOを後に続けた場合)か、任意選択で引用符を付ける(キーワードOPTIONALを後に続けた場合)か、常に引用符で囲む(キーワードYESを後に続けた場合)かを指定します。次のいずれかのキーワードが後に続く必要があります。NO、OPTIONAL、またはYES。
NO
キーワードQUOTEの後に続けることができます。フィールド値を引用符で囲まないことを指定します。これはデフォルトの動作です。
OPTIONAL
キーワードQUOTEの後に続けることができます。フィールド値を任意選択により引用符で囲むことを指定します。
YES
キーワードQUOTEの後に続けることができます。フィールド値を常に引用符で囲むことを指定します。
'q'
入力データ ソースの可変長テキスト レコードのフィールド値の中で左側の引用符にする文字を指定します(省略可)。詳細は'r'の項を参照してください。
'r'
入力データ ソースの可変長テキスト レコードのフィールド値の中で右側の引用符にする文字を指定します(省略可)。
左側および右側の引用符の規則は次のとおりです。
  • 引用符は、左側でも右側でも1文字にする必要がありますが、1バイトまたはマルチバイトのどちらでも構いません。クライアント セッション文字セットで表現します。
  • 左側の引用符と右側の引用符には、異なる文字を指定できます。
  • 'q'のみを指定した場合、その文字が左側と右側の両方の引用符として使用されます。
  • 'q'または'r'を指定しない場合のデフォルトでは、左側または右側の引用符は'"'になります。