構文 - Parallel Transporter

Teradata® Parallel Transporterリファレンス

Product
Parallel Transporter
Release Number
16.20
Published
2019年9月
Language
日本語
Last Update
2020-01-29
dita:mapPath
ja-JP/whl1527114222314.ditamap
dita:ditavalPath
ft:empty
dita:id
B035-2436
Product Category
Teradata Tools and Utilities






構文規則:

構文要素 説明
ANSIDATE ダッシュ(ハイフン)で区切られた10文字からなる標準形式の日付データ型を指定する任意選択のキーワード。 例えば、2007年10月23日は次のように表わします。

2007-10-23

BIGINT 8バイト2進整数の数値データ型を指定する任意選択のキーワード。
BLOB(lengthBytes)

CLOB(lengthBytes)

インラインLOB(ラージ オブジェクト)列を指定する任意選択のキーワード。インラインLOB列のデータは、非LOB列のデータと同様に、スキーマで定義されたデータ行に保存されます。

インラインLOBのデータ型は、BLOB (バイナリ ラージ オブジェクト)またはCLOB (キャラクタ ラージ オブジェクト)のいずれかです。

lengthBytesには、LOB列の値がデータ行に格納できるデータの最大バイト数を指定します。VARCHAR列と同様に、データ行にはlengthBytesより小さい任意のサイズのデータを格納できます。Teradata PTによってサポートされるインラインLOBの最大サイズは64,000バイトです。

DataConnectorオペレータは、外部ファイルからLOBデータを読み込むか、外部ファイルにLOBデータを書き込みます。SQL Selectorオペレータは、Teradata DatabaseからLOBデータを抽出し、データ ストリームに入れます。SQL Inserterオペレータ、Streamオペレータ、およびUpdateオペレータは、データ ストリームからデータを読み取りTeradata Databaseにロードできます。

データ行がDataConnectorオペレータによって読み込まれたファイルからのものである場合は、インラインLOBデータの前に8バイトの標識が付加されます。他のオペレータ(エクスポートとロード)は、LOBデータを処理できません。
BLOB(lengthBytes) AS DEFERRED BY NAME

CLOB(lengthBytes) AS DEFERRED BY NAME

遅延LOB(ラージ オブジェクト)列を指定する任意選択のキーワード。遅延LOB列のデータは、Teradata PTスキーマで定義されたデータ行ではなくファイルに保存されます。

遅延LOBは、BLOBまたはCLOBのどちらかのデータ型です。

lengthBytesには、LOB列の値がTeradata Databaseに格納できるデータの最大バイト数、つまりデータ行に名前が格納されるファイルの最大サイズを指定します。遅延LOBのlengthBytesの最大値は2,000,000,000バイトです。

遅延LOBデータを含むファイルの名前は、VARCHAR列の値と同様に、2バイト長の接頭辞付きでデータ行に格納されます。 行の値は、完全修飾パスの名前か、Teradata PTが実行元のディレクトリから検索するファイルの名前です。

Teradata PT LOBファイル識別子を指定するAS DEFERRED BY NAMEオプションは、LOBデータが遅延され、非LOBデータとは別にTeradata Databaseに送信されることを示します。

AS DEFERRED BY NAMEオプションが指定されている場合、LOBデータ自体ではなくLOBファイル識別子がデータ ストリーム内に必要であることを示します。

BLOBまたはCLOB列定義でAS DEFERRED BY NAMEが指定されていない場合、Teradata PTは、非LOBデータと同様に、BLOBまたはCLOBデータをデータ行に格納してTeradata Databaseに送信します。

SQL SelectorオペレータはTeradata DatabaseからLOBデータを抽出できる唯一のProducerオペレータです。SQL Inserterオペレータ、Updateオペレータ、Streamオペレータは、遅延LOBをTeradata Databaseにロードできる唯一のConsumerオペレータです。他のオペレータ(エクスポートとロード)は、LOBデータを処理できません。

BYTE

BYTE (lengthBytes)

バイナリ データを格納する固定長の列を指定する任意選択のキーワード。

lengthBytesには、列の長さをバイト単位で指定します。

有効な最大長は64,000バイトです。指定されていない場合、デフォルトの長さは1バイトです。

BYTEINT 1バイトの整数(-128~+127の範囲の整数)を指定する任意選択のキーワード。
CHAR

CHARS

CHARACTER

CHARACTERS

CHAR (lengthBytes)

CHARS(lengthBytes)

CHARACTER(lengthBytes)

CHARACTERS(lengthBytes)

文字データを格納する固定長の列を指定する任意選択のキーワード。

lengthBytesには、列の長さをバイト単位で指定します。 有効な最大長は64,000バイトです。 指定されていない場合、デフォルトの長さは1です。

CHAR VARYING

CHARS VARYING

CHARACTER VARYING

CHARACTERS VARYING

CHAR VARYING(lengthBytes)

CHARS VARYING(lengthBytes)

CHARACTER VARYING(lengthBytes)

CHARACTERS VARYING(lengthBytes)

文字データを格納する可変長の列を指定する任意選択のキーワード。

lengthBytesには、列の長さをバイト単位で指定します。 有効な最大長は64,000バイトです。 指定されていない場合、デフォルトの長さは1です。

VARCHARの説明を参照してください。

columnName スキーマによって記述されるデータ ソースまたはデータ ターゲット内の列の、必須のユーザー提供の名前。 指定された各列名は、スキーマの中で固有でなければなりません。
DECIMAL、DEC、またはNUMERIC
  • (lengthDigits)
  • (lengthDigits, precision)
10進数の数値データ型を定義する任意選択のキーワード。 このデータ型は、データ列の桁数と小数点以下の精度も定義します。
  • lengthDigitsは合計桁数です。 lengthDigitsは1~38の範囲で指定できます。 デフォルトは5です。

    precisionを指定する場合は、lengthDigitsを指定する必要があります。

  • precisionは小数点以下の桁数です。 precision指定の範囲は、0からlengthDigits指定の値までです。 precisionのデフォルトは0です。

lengthDigitsとprecisionの値が指定されていない場合は、デフォルト値が使用されます。

DECIMALデータの不一致は、ジョブが次の3つの規則に従っている限り許可されます。
  1. ソースの桁数は、スキーマ内の桁数より小さくなければなりません。
  2. ソースとスキーマのストレージ サイズは同じである必要があります。
  3. 精度の値は一致する必要があります。

    Teradata DatabaseではDECIMALデータをスケーリングされた整数として格納するため、精度が異なると、正しくない値がデータベースに格納されます。

DEFINE SCHEMA スキーマ定義の開始を指定する必須のキーワード句。
DELIMITED Teradata PTが、Teradata PTスキーマの区切りデータからなるファイル形式バージョンを生成することを示すキーワード。 このキーワードのベースとなるDBSテーブル名は、次のいずれかの方法で指定します。
  • 引用符で囲まれた文字列tableName
  • sqlSelectStatementの内部
  • スクリプトで定義されたオペレータのselectStmt属性
DESCRIPTION 'descriptionString' 定義済みスキーマについての説明を示す任意選択のキーワード句。
FLOAT 浮動小数点データ型を定義する任意選択のキーワード。
FROM SELECT SQL SELECT文の結果テーブル内の列に基づいて、TPTがスキーマを生成することを示すキーワード句。このSQL SELECT文は、オペレータのoperatorNameのSelectStmt属性によって明示的または間接的に指定されます。
FROM TABLE 引用符で囲まれた文字列tableNameで特定されるDBSテーブルの列に基づいて、Teradata PTがスキーマを生成することを示すキーワード句。
GRAPHIC

GRAPHIC(lengthChars)

2バイトのグラフィック文字を格納する固定長の列を指定する任意選択のキーワード。

lengthCharsには、列の長さを2バイトのグラフィック文字単位で指定します。 有効な最大長は32,000文字です。 指定されていない場合、デフォルトの長さは1文字です。

GRAPHIC列のバイト長はlengthCharsの値の2倍です。

INTDATE 次の式で計算される、4バイトの2進整数で表わされるデータ値を格納する列を指定する任意選択のキーワード。

intdate値 = (年 - 1900) * 10000 + 月 * 100 + 日

例えば、2007年10月23日に対応するINTDATE列の値は1071023です。

INTEGER

INT

4バイト整数のデータ型を指定する任意選択のキーワード。
INTERVAL DAY

INTERVAL DAY(lengthDigits)

時間間隔列を日単位で指定する任意選択のキーワード。lengthDigitsは、間隔を表わすために使用される桁数(右詰め)です。 有効な値は1~4です。 デフォルト値は2です。
INTERVAL列の値は、Teradata Databaseの外部の値で、様々な長さおよび形式の文字列によって表わされます。 ただし、現時点では、Teradata PTは、これらの有効なINTERVALの長さおよび形式を認識できず、通常はINTERVAL列の値と文字列を区別できません。 ジョブ スクリプトにはINTERVAL列の値を表わすための文字列を含めることができますが、Teradata PTはその正当性を確認できません。 INTERVAL列のリテラル文字列の形式が適切である場合は、「等号」(=)または「不等号」(<>)のいずれかの比較演算子を使用して、リテラル文字列とそれに対応するデータ行内のINTERVAL列の値の型を正確に比較できます。 INTERVAL列型の値を表わす文字列の有効な長さおよび形式の詳細については、<SQLデータ型およびリテラル、B035-1143>を参照してください。
INTERVAL DAY TO HOUR

INTERVAL DAY(lengthDigits) TO HOUR

時間間隔列を名前付き列の日単位および時間単位で指定する任意選択のキーワード。lengthDigitsは、間隔(日単位)を定義するために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL DAY TO MINUTE

INTERVAL DAY(lengthDigits) TO MINUTE

時間間隔列を名前付き列の日単位、時間単位、および分単位で指定する任意選択のキーワード。lengthDigitsは、間隔(日単位)を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL DAY TO SECOND

INTERVAL DAY(lengthDigits) TO SECOND

INTERVAL DAY TO SECOND(precision)

INTERVAL DAY(lengthDigits) TO SECOND(precision)

時間間隔列を日単位、時間単位、分単位、および秒単位で指定する任意選択のキーワードで、以下のように指定します。
  • lengthDigitsは、間隔(日単位)を定義するために使用される桁数(右詰め)です。 有効な値は1~4です。 デフォルト値は2です。
  • precisionは、小数点以下の桁数で、秒の小数部を定義するために使用されます。 有効な値は1~6です。 デフォルト値は6です。

INTERVAL DAYの注記を参照してください。

INTERVAL HOUR

INTERVAL HOUR(lengthDigits)

時間間隔列を時間単位で指定する任意選択のキーワード。lengthDigitsは、間隔(時間単位)を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL HOUR TO MINUTE

INTERVAL HOUR(lengthDigits) TO MINUTE

時間間隔列を時間単位および分単位で指定する任意選択のキーワード。lengthDigitsは、間隔(時間単位)を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL HOUR TO SECOND

INTERVAL HOUR(lengthDigits) TO SECOND

INTERVAL HOUR TO SECOND(precision)

INTERVAL HOUR(lengthDigits) TO SECOND (precision)

時間間隔列を時間単位、分単位、および秒単位で指定する任意選択のキーワード。
  • lengthDigitsは、間隔(時間単位)を定義するために使用される桁数(右詰め)です。 有効な値は1~4です。 デフォルト値は2です。
  • precisionは、精度(小数点以下の桁数)で、秒の小数部を定義するために使用されます。 有効な値は1~6です。 デフォルト値は6です。

INTERVAL DAYの注記を参照してください。

INTERVAL MINUTE

INTERVAL MINUTE(lengthDigits)

時間間隔列を分単位で指定する任意選択のキーワード。lengthDigitsは、間隔(分単位)を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL MINUTE TO SECOND

INTERVAL MINUTE(lengthDigits) TO SECOND (precision)

INTERVAL MINUTE(lengthDigits) TO SECOND

INTERVAL MINUTE TO SECOND(precision)

時間間隔列を分単位および秒単位で指定する任意選択のキーワード。
  • lengthDigitsは、間隔(分単位)を定義するために使用される桁数(右詰め)です。 有効な値は1~4です。 デフォルト値は2です。
  • precisionは、精度(小数点以下の桁数)で、秒の小数部を定義するために使用されます。 有効な値は1~6です。 デフォルト値は6です。

INTERVAL DAYの注記を参照してください。

INTERVAL SECOND,

INTERVAL SECOND(lengthDigits)

INTERVAL SECOND(lengthDigits, precision)

時間間隔列を秒単位で(オプションで最も近い小数秒まで)指定する任意選択のキーワード。
  • lengthDigitsは、間隔(秒単位)を定義するために使用される桁数(右詰め)です。 有効な値は1~4です。 デフォルト値は2です。
  • precisionは、精度(小数点以下の桁数)で、秒の小数部を定義するために使用されます。 有効な値は1~6です。 デフォルト値は6です。

INTERVAL DAYの注記を参照してください。

INTERVAL MONTH

INTERVAL MONTH(lengthDigits)

時間間隔列を月単位で指定する任意選択のキーワード。lengthDigitsは、月数を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL YEAR

INTERVAL YEAR(lengthDigits)

時間間隔列を年単位で指定する任意選択のキーワード。lengthDigitsは、年数を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

INTERVAL YEAR TO MONTH

INTERVAL YEAR(lengthDigits) TO MONTH

時間間隔列を年単位および月単位で指定する任意選択のキーワード。lengthDigitsは、年数を表わすために使用される桁数(右詰め)です。

有効値は1~4で、デフォルト値は2です。

INTERVAL DAYの注記を参照してください。

JSON(lengthBytes)

JSON(lengthBytes) AS DEFERRED BY NAME

インラインJavaScript Object Notation (JSON)列を指定する任意選択のキーワード。インラインJSON列のデータは、非JSON列のデータと同様に、スキーマで定義されたデータ行に格納されます。

lengthBytesには、インラインのJSON列がデータ行に格納できるデータの最大バイト数を指定します。VARCHAR列と同様に、データ行にはlengthBytesより小さい任意のサイズのデータを格納できます。 Teradata PTでサポートされる最大インラインJSON列は、64,000バイトです。

DataConnectorオペレータは、外部ファイルからのJSONデータの読み込み、および外部ファイルへのJSONデータの書き込みを行ないます。SQL Selectorオペレータは、Teradata DatabaseからJSONデータを抽出し、データ ストリームに入れます。SQL Inserterオペレータ、Updateオペレータ、およびStreamオペレータは、データ ストリームからデータを読み取りTeradata Databaseにロードします。

データ行がDataConnectorオペレータによって読み込まれたファイルからのものである場合は、インラインJSONデータの前に8バイトの標識が付加されます。

他のオペレータ(ExportとLoad)は、JSONデータを処理できません。

AS DEFERRED BY NAME

遅延JSON列を指定するオプション キーワード。この列のデータは、Teradata PTスキーマで定義されたデータ行ではなく、ファイルに格納されます。

lengthBytesには、JSON列がTeradata Databaseに格納できるデータの最大バイト数、つまりデータ行に名前が格納されるファイルの最大サイズを指定します。 遅延JSONファイルのlengthBytesの最大値は、2,000,000,000バイトです。

AS DEFERRED BY NAMEオプションが指定されている場合、JSONデータ自体ではなくJSONファイル識別子がデータ ストリーム内に必要であることを示します。 遅延JSONデータを含むファイルの名前は、VARCHAR列の値と同様に、2バイト長の接頭辞付きでデータ行に格納されます。 行の値は、完全修飾パスの名前か、Teradata PTが実行元のディレクトリから検索するファイルの名前です。

  • Teradata PT JSONファイル識別子を指定するAS DEFERRED BY NAMEオプションは、JSONデータが遅延され、非JSONデータとは別にTeradata Databaseに送信されることを示します。
  • JSON列定義でAS DEFERRED BY NAMEを省略すると、Teradata DatabaseにJSONデータを非JSONデータと同様に送信するようにTeradata PTに指示できます。

SQL Selectorオペレータは、Teradata DatabaseからJSONデータを抽出できる唯一のProducerオペレータです。 SQL Inserterオペレータは、Teradata Databaseに遅延JSONファイルをロードできる唯一の Consumerオペレータです。 その他のオペレータ(Export、Load、Update、およびStream)はJSONデータを処理できません。

lengthBytes 非数値データ型の長さ指定。

可変長データ型の場合は、lengthBytesを指定する必要があります。

UTF16でエンコードされたCHAR列またはVARCHAR列に対してlengthBytesを指定した場合、この指定は、列の値によって占有されるバイト数を表わします。その値は、Teradata Databaseテーブルのスキーマと同等の列記述内でlengthに指定する文字カウントの2倍になります。
lengthChars GRAPHIC列またはVARGRAPHIC列の長さを2バイトのグラフィック文字単位で指定する任意選択のキーワード。

これらの値のバイト長はlengthCharsの値の2倍です。

MACROCHARSET Teradata Databaseサーバーの文字セット名を文字フィールドに定義する任意選択の句。

MACROCHARSETは、Streamオペレータのマクロ作成時に、文字データ型の各フィールドにCHARACTER SET <ServerCharsetName>句を生成するために使用されます。

文字タイプのフィールドにMACROCHARSET句がない場合は、以下のいずれかがデフォルトになります。

  • マクロ作成時にCHARACTER SET句が生成されない。この場合、以下のいずれかがクライアント セッション文字セットになります。
    • ASCII
    • EBCDIC
    • EBCDIC037_0E
    • EBCDIC277_0E
    • EBCDIC273_0E
    • LATIN1_0A
    • LATIN9_0A
    • LATIN1252_0A
    • LATIN1252_3A0
    • 単純な(1バイト)サイト定義のクライアント文字セット。名前は、_0Aまたは_0Eで終わります。
  • CHARACTER SET UNICODE句。マクロ作成時に、上記のリストに含まれないすべてのクライアント セッション文字セットで生成されます。
MACROCHARSET句は、以下にのみ適用されます。
  • 文字フィールド。MACROCHARSETが文字タイプ フィールド以外に指定された場合、エラーが返されます。
  • Teradata PT Streamオペレータ。 MACROCHARSET句は、他のオペレータで無視されます。
macroCharSetIdentifier サーバー記憶装置の文字セット名を指定する任意選択の識別子。この文字セット名はStreamオペレータで使用され、Streamオペレータがデータのロードに必要なマクロを作成するときに、文字の列ごとにCHARACTER SET句が生成されます。
指定できる値は次の5つです。
  • LATIN
  • UNICODE
  • KANJI1
  • KANJISJIS
  • GRAPHIC

この識別子に指定される値は、スキーマがStreamオペレータのインスタンスで使用される場合にのみDEFINE SCHEMA文で必要になります。

METADATA (metadataType) このスキーマ列の値がソース データに含まれず、オペレータ自体から直接提供されるメタデータであることを指定する任意選択のキーワード。この機能によって、データがロードされた後にデータの元の場所を識別することができ、データベースでロードできない無効なソース レコードを見つけることも可能です。
"metadataType"には次の値を使用できます。
  • 'FileName': 現在のファイル名がソース データに追加されます。CHARデータ型またはVARCHARデータ型として定義する必要があり、この列のサイズは、検出された最も長いファイル名を保持できる十分な大きさでなければなりません。
  • 'FileRecordNumber': ファイルのレコード番号が、処理された各レコードのソース データに追加されます。INTEGERデータ型またはBIGINTデータ型として定義する必要があります。ターゲット テーブルの列は、検出された最大レコード番号を処理できる十分な大きさでなければなりません。INTEGERに使用できる最大値は次のとおりです。

    2,147,483,647.

    レコード番号がこの最大値を超えた場合は、代わりに0が格納されます。

"metadataType"ごとにエントリが1つのみ許可されます。ただし、METADATA列はスキーマ内の任意の場所に指定できます。この機能は、$FILE_READERオペレータとともに使用する場合にのみ有効です。すべてのDataConnector形式の種類がサポートされています。

DEFINE SCHEMA文の例の例6と例7を参照してください。

NUMBER

NUMBER(*)

NUMBER(*,scale)

NUMBER(precision)

NUMBER(precision,scale)

最大38桁で精度(オプションで次の範囲の任意指定の指数を使用して最大スケールの精度桁数)を表わす列を指定する任意選択のキーワード:
  • スケールがゼロの場合、E-130~E+125。
  • スケールが0よりも大きい場合、E-スケール~E+(125-スケール)。
    TPTスキーマ オブジェクトでNUMBERとして定義された列は、述部や式がNUMBER列参照のみで構成されているのでない限り、TPT APPLY文の論理述部または数値式から参照することができません。 NUMBER列に関係する述部または式の参照、およびNUMBER以外の列の参照は、サポートされていません。
PERIOD(DATE) 先頭および末尾のデータ値から構成される期間を表わす値を格納する列を指定する任意選択のキーワード。

PERIOD列の値は、Teradata DatabaseとTeradata PTの内部でコーディングされています。 ジョブ スクリプトで、PERIOD列型の値を文字列で表わすことはできません。また、同じPERIOD型の2つの列を論理述部で比較することもできません。

PERIOD列型の値の内部構造およびBTEQから取得した場合の表現方法の詳細については、<SQLデータ型およびリテラル、B035-1143>を参照してください。

PERIOD(TIME)

PERIOD(TIME(precision))

先頭および末尾の時刻値から構成される期間を表わす値を格納する列を指定する任意選択のキーワード。

precisionには秒の小数部の桁数を指定します。(有効値: 0~6)デフォルト値は6です。

PERIOD(DATE)の注記を参照してください。

PERIOD (TIME WITH TIME ZONE)

PERIOD(TIME(precision)WITH TIME ZONE)

先頭および末尾のタイム ゾーン付き時刻値から構成される期間を表わす値を格納する列を指定する任意選択のキーワード。

precisionには秒の小数部の桁数を指定します。(有効値: 0~6)デフォルト値は6です。

PERIOD(DATE)の注記を参照してください。

PERIOD(TIMESTAMP)

PERIOD(TIMESTAMP(precision))

先頭および末尾のタイムスタンプ値から構成される期間を表わす値を格納する列を指定する任意選択のキーワード。

precisionには秒の小数部の桁数を指定します。(有効値: 0~6)デフォルト値は6です。

PERIOD(DATE)の注記を参照してください。

PERIOD(TIMESTAMP WITH TIME ZONE)

PERIOD(TIMESTAMP(precision) WITH TIME ZONE)

先頭および末尾のタイム ゾーン付きタイムスタンプ値から構成される期間を表わす値を格納する列を指定する任意選択のキーワード。

precisionには秒の小数部の桁数を指定します。(有効値: 0~6)デフォルト値は6です。

PERIOD(DATE)の注記を参照してください。

lengthDigits 10進数を格納するデータ型の任意選択の長さ値(桁数)。

lengthDigitsの範囲およびデフォルト値は、適用対象のデータ型によって異なります。 詳細については、このテーブルの個々のデータ型に関する説明を参照してください。

OF OPERATOR スクリプトで定義されたoperatorNameのSelectStmt属性に割り当てられたSQL SELECT文に基づいて、Teradata PTがスキーマを生成することを示すキーワード句。
operatorName DEFINE OPERATOR文で定義されるオペレータの名前。この名前のSQL SELECT文が、Teradata PTの生成するスキーマの基になります。

スクリプトにオペレータが定義されていない場合、operatorNameは、APPLY-SELECT文で指定されたオペレータ テンプレートの名前になります。

precision 小数点以下の桁数を定義する任意選択の値。

precisionの範囲およびデフォルト値は、適用対象のデータ型によって異なります。 詳細については、このテーブルの個々のデータ型に関する説明を参照してください。

schemaObjectName 定義済みスキーマ オブジェクトの必須の内部メタデータ名。
SMALLINT 2バイト整数の数値データ型を指定する任意選択のキーワード。
sqlSelectStatement SQL SELECT文。このステートメントの結果テーブルの列が、Teradata PTの生成するスキーマの基になります。
tableName DBSテーブルの名前。この名前の列定義は、Teradata PTで以下を生成する基底として使用されます。
  • DEFINE SCHEMA文。ジョブ スクリプトで、DEFINE SCHEMA文の短縮バージョンを置き換えます。
  • SQL INSERT文。ジョブ スクリプトで、直前のスクリプト マクロ$INSERTを置き換えます。
TIME

TIME(precision)

時刻値を格納する列を指定する任意選択のキーワード。

precisionは小数点以下の桁数(秒の小数部)を表わします。 precisionの有効な値は0~6です。 デフォルト値は6です。

4つの時間指向の列型(TIME、TIME WITH TIME ZONE、TIMESTAMP、およびTIMESTAMP WITH TIME ZONE)では、小数秒のデフォルト精度はゼロではなく6です。 したがって、TIMEおよびTIME(6)は同じ列を表わします。また、時刻値に小数秒が含まれない場合は、TIME(0)を指定する必要があります。

これらの4つの時間指向列の値は、Teradata Databaseの外部の値で、明確に定義された長さおよび形式の文字列によって表わされます。 ただし、Teradata PTは、これらの長さおよび形式を認識できず、これらの時間指向列の値を表わすジョブ スクリプト文字列の正当性を確認できません。

スクリプトのリテラル文字列がこれらのいずれかの列型の有効な値表現である場合、すべての比較演算子は、その値と同じ時間指向型の列の行の値を正確に比較します。 同様に、すべての比較演算子は、同じ型の2つの列の行の値を正確に比較します。

TIME WITH TIME ZONE

TIME(precision) WITH TIME ZONE

タイム ゾーン オフセットを含む時刻値を格納する列を指定する任意選択のキーワード。

precisionは小数点以下の桁数(秒の小数部)を表わします。 precisionの有効な値は0~6です。 デフォルト値は6です。

TIMEの注記を参照してください。

USINGEXTENSION (‘usingExtension’) このスキーマ列のUSING句拡張機能を指定する任意選択のキーワード。

データ ローディングの場合、オペレータはスキーマに基づいてUSING句を生成します。オペレータはUSING句をTeradata Databaseに送信します。USING句は、データ行のレイアウトを識別します。

オペレータは、USING句を生成するときにUsingExtension値を列に追加します。オペレータはUsingExtension値を検証しません。UsingExtension値は、Teradata Databaseによって検証されます。

ジョブが拡張MultiLoadプロトコルを使用している場合、USINGEXTENSIONオプションはTeradata PT Updateオペレータにのみ適用されます。

ジョブが従来のMultiLoadプロトコルを使用している場合、USINGEXTENSIONオプションは無視されます。また、USINGEXTENSIONオプションは他のTeradata PTオペレータでは無視されます。

USINGEXTENSIONオプションは、Teradata PT Updateオペレータを使って、一時テーブルにデータをロードするのに使用できます。

USINGEXTENSIONオプションの使用方法の詳細については、テンポラル テーブルを参照してください。

VARBYTE

VARBYTE(lengthBytes)

バイナリ データを格納する可変長の列を指定する任意選択のキーワード。

lengthBytesには、列の最大長をバイト単位で指定します。

指定されていない場合、デフォルトの列の長さは有効な最大長である64,000バイトです。

DEFINE SCHEMA定義で定められている長さ以下であるVARCHARデータとVARBYTEデータが指定可能です。

VARCHAR

VARCHAR(lengthBytes)

文字データを格納する可変長の列を指定する任意選択のキーワード。

lengthBytesには、列の最大長をバイト単位で指定します。

指定されていない場合、デフォルトの列の長さは有効な最大長である64,000バイトです。
VARDATE(lengthBytes)

FORMATIN(formatString)

FORMATOUT(formatString)

可変長の文字ベースの列を指定する任意選択のキーワード。指定した列のデータ形式は、Teradata DateTime列にロードされる前に変更されます。

FORMATIN文字列は、入力のDateTimeデータの形式と一致します。

FORMATOUT文字列は、データのロード先になるTeradata DateTime列が受け入れる形式と一致します。

lengthBytesは、最長の形式文字列のサイズ以上にする必要があります。

VARDATE列データ型を使用して、DateTimeデータの形式を変更する方法の詳細や例については、<Teradata Parallel Transporterユーザー ガイド、B035-2445>の「VARDATE列によるDateTimeデータの形式変更」を参照してください。

VARGRAPHIC

VARGRAPHIC(lengthBytes)

2バイトのグラフィック文字を格納する可変長の列を指定する任意選択のキーワード。

lengthBytesには、列の長さを2バイトのグラフィック文字単位で指定します。

指定されていない場合、デフォルトの長さは有効な最大長である32,000文字です。

VARGRAPHIC列のバイト長はlengthCharsの値の2倍です。

XML

XML AS DEFERRED BY NAME

インラインXML列を指定する任意選択のキーワード。インラインXML列のデータは、非XML列のデータと同様に、スキーマで定義されたデータ行に保存されます。

Teradata PTは、インラインXML列のデフォルト サイズを64,000バイトに設定します。

DataConnectorオペレータは、外部ファイルからXMLデータを読み込むか、外部ファイルにLOBデータを書き込みます。SQL Selectorオペレータは、Teradata DatabaseからXMLデータを抽出し、データ ストリームに入れます。SQL Inserterオペレータ、Updateオペレータ、およびStreamオペレータは、データ ストリームからデータを読み取りTeradata Databaseにロードします。

データ行がDataConnectorオペレータによって読み込まれたファイルからのものである場合は、インラインXMLデータの前に8バイトの標識が付加されます。他のオペレータ(ExportとLoad)は、XMLデータを処理できません。

AS DEFERRED BY NAME

遅延XML列を指定するオプション。この列のデータは、Teradata PTスキーマで定義されたデータ行ではなく、ファイルに格納されます。

Teradata PTは、遅延XML列のデフォルト サイズを2,000,000,000バイトに設定します。

Teradata PT XMLファイル識別子を指定するAS DEFERRED BY NAMEオプションは、XMLデータが遅延され、非XMLデータとは別にTeradata Databaseに送信されることを示します。

遅延XMLデータを含むファイルの名前は、VARCHAR列の値と同様に、2バイト長の接頭辞付きでデータ行に格納されます。 行の値は、完全修飾パスの名前か、Teradata PTが実行元のディレクトリから検索するファイルの名前です。
  • AS DEFERRED BY NAMEオプションが指定されている場合、XMLデータ自体ではなくXMLファイル識別子がデータ ストリーム内に必要であることを示します。
  • XML列定義でAS DEFERRED BY NAMEを省略すると、Teradata DatabaseにXMLデータを非XMLデータと同様に送信するようにTeradata PTに指示できます。

SQL Selectorオペレータは、Teradata DatabaseからXMLデータを抽出できる唯一のProducerオペレータです。SQL Inserterオペレータ、Updateオペレータ、およびStreamオペレータは、データ ストリームからXMLデータを読み取りTeradata Databaseにロードできます。他のオペレータ(ExportとLoad)は、XMLデータを処理できません。

Teradata PTでは、WHERE句で指定される述部評価、またはSQLリクエストのCASE式のどのタイプにおいても、XML列を使用することはできません。