17.10 - Teradata MultiLoadジョブ スクリプトの記述 - MultiLoad

Teradata® MultiLoadリファレンス

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

6レコードのinsert.dataファイルをEmployee表にロードするinsert.mloadという名前のTeradata MultiLoadジョブ スクリプト ファイルを作成して保存します。

.logtable inslogtable;
.logon tdpid/username,password;

CREATE TABLE employee (
    EmpNo SMALLINT FORMAT ‘9(5)’ BETWEEN 10001 AND 32001 NOT NULL,
    Name VARCHAR(12),
    DeptNo SMALLINT FORMAT ‘999’ BETWEEN 100 AND 900 ,
    PhoneNo SMALLINT FORMAT ‘9999’ BETWEEN 1000 AND 9999,
    JobTitle VARCHAR(12),
    Salary DECIMAL(8,2) FORMAT ‘ZZZ,ZZ9.99’ BETWEEN 1.00 AND 999000.00 ,
    YrsExp BYTEINT FORMAT ‘Z9’ BETWEEN -99 AND 99 ,
    DOB DATE FORMAT ‘MMMbDDbYYYY’,
    Sex CHAR(1) UPPERCASE,
    Race CHAR(1) UPPERCASE,
    MStat CHAR(1) UPPERCASE,
    EdLev BYTEINT FORMAT ‘Z9’ BETWEEN 0 AND 22,
    HCap BYTEINT FORMAT ‘Z9’ BETWEEN -99 AND 99 )
    UNIQUE PRIMARY INDEX( EmpNo )
    INDEX( Name );

.begin import mload tables employee;
.layout inslayout;
    .field EmpNo 2 char(9);
    .field Name 12 char(12);
    .field DeptNo 25 char(3);
    .field PhoneNo 29 char(4);
    .field JobTitle 34 char(12);
    .field Salary 47 char(9);
    .field YrsExp 57 char(2);
    .field DOB 60 char(11);
    .field Sex 72 char(1);
    .field Race 74 char(1);
    .field MStat 76 char(1);
    .field EdLev 78 char(2);
    .field HCap 81 char(2);
.dml label insdml;
insert into employee.*;

.import infile insert.input
     format text
     layout inslayout
     apply insdml;
.end mload;
.logoff;

コメント

  1. 前述の例で使用されている下記のTeradata MultiLoadユーティリティ コマンドの構文と説明については、Teradata MultiLoadコマンドを参照してください。
    • BEGIN MLOAD
    • BEGIN MLOAD
    • DML LABEL
    • END MLOAD
    • FIELD
    • IMPORT
    • LAYOUT
    • LOGOFF
    • LOGON
    • LOGTABLE
  2. CREATE TABLE文で、データベース上に次の内容の新しい表を作成します。
    • 名前はemployee
    • 以下の列が指定されている

      - DeptNo

      - DOB

      - EdLev

      - EmpNo

      - HCap

      - JobTitle

      - MStat

      - Name

      - PhoneNo

      - Race

      - Salary

      - Sex

      - YrsExp

    • 索引:

      - EmpNo (固有基本)

      - Name

      CREATE TABLE文については、Teradata Vantage™ - SQLデータ定義言語 構文規則および例, B035-1144を参照してください。

  3. LAYOUTコマンドおよび一連のFIELDコマンドは、データベースに送信されるデータ・レコードの各フィールドを指定します。(ソース データ ファイルの作成で作成したinsert.inputデータ ファイル。)

    指定したレイアウト名inslayoutは、これに続くTeradata MultiLoad IMPORTコマンドで参照されます。

    各FIELDコマンドは、入力データ レコード内の各フィールドの名前、開始位置、およびデータ型を指定します。フィールドを宣言する場合、1文字および複数文字の区切り文字フィールドを使用するかどうかは任意です。この例では必要としていません。

  4. DML LABELコマンドは、INSERT文を導きます。
  5. IMPORTコマンドは、insert.inputファイルとinsdml挿入文を使用してインポート タスクを開始します。