例2: DELETEタスク オプション - Parallel Transporter

Teradata® Parallel Transporterリファレンス - 17.20

Product
Parallel Transporter
Release Number
17.20
Published
2022年10月10日
Language
日本語
Last Update
2022-11-21
dita:mapPath
ja-JP/rwr1645128188440.ditamap
dita:ditavalPath
ja-JP/obe1474387269547.ditaval
dita:id
B035-2436
Product Category
Teradata Tools and Utilities

以下の例は、上述のDELETEタスク例と同じ目的を達成しますが、少し異なる手法を使用します。 削除基準にハード コーディングされた値を使用するのではなく、この例の値は、DataConnectorオペレータとデータ ストリームによって外部ファイルから供給されます。 SQLホスト変数(:CustNo)は、DELETE文の値を表わします。

この場合、Updateオペレータは、データ ストリームから入力を受け取るので、DELETEタスクとして使用される Consumerオペレータです。 このアプローチと最初の例との違いを太字で示します。

DEFINE JOB DELETE_TASK_PARAM
DESCRIPTION 'External File DELETE FROM CUSTOMER TABLE'
(
DEFINE SCHEMA CUST_NUM_SCHEMA
DESCRIPTION 'CUSTOMER NUMBER SCHEMA'
(
Cust_Num INTEGER
);

  DEFINE OPERATOR UPDATE_OPERATOR
  DESCRIPTION 'Teradata PT UPDATE OPERATOR'
  TYPE UPDATE
  SCHEMA CUST_NUM_SCHEMA
  ATTRIBUTES
  (
    VARCHAR TargetTable = 'Customer',
    VARCHAR TdpId = @Tdpid,
    VARCHAR UserName = @Userid,
    VARCHAR UserPassword = @Pwd,
    VARCHAR AccountId,
    VARCHAR LogTable = 'DeleteTask_log',
    VARCHAR DeleteTask = 'Y'
  );

DEFINE OPERATOR DATA_PRODUCER
DESCRIPTION 'DATA CONNECTOR OPERATOR'
TYPE DATACONNECTOR PRODUCER
SCHEMA CUST_NUM_SCHEMA
ATTRIBUTES
(

VARCHAR OpenMode = 'Read',
VARCHAR Format = 'Formatted',
VARCHAR IndicatorMode,
VARCHAR FileName =  'Single_Row_File'
);
APPLY
(
 'DELETE FROM CUSTOMER WHERE CUSTOMER_NUMBER LT :CustNo')

TO OPERATOR (UPDATE_OPERATOR [1])

SELECT * FROM OPERATOR  (DATA_PRODUCER[1]);

);