Вы находитесь на странице: 1из 1

.LOGTABLE TDFACT.

DAILY_SALES_TPUMP_LOG ;
.LOGON LOCALTD/tduser,tduser ;
.BEGIN LOAD
SESSIONS 1
CHECKPOINT 0
SERIALIZE OFF
ROBUST ON;
.LAYOUT
Record_Layout;
.FIELD IN_IND
*
VARCHAR(1);
.FIELD IN_ITEMID
*
varchar(10);
.FIELD IN_SLSDT
*
varchar(8);
.FIELD IN_SALES
*
varchar(10);
.DML LABEL INSERT_DAILY;
INSERT INTO TDFACT.DAILY_SALES_TPUMP VALUES
(:IN_ITEMID, :IN_SLSDT, :IN_SALES);
.DML LABEL UPSERT_DAILY
DO INSERT FOR MISSING UPDATE ROWS ;
UPDATE TDFACT.DAILY_SALES_TPUMP
SET SALES = :IN_SALES * .25
WHERE ITEMID = :IN_ITEMID AND SALESDATE = :IN_SLSDT;
INSERT INTO TDFACT.DAILY_SALES_TPUMP VALUES
(:IN_ITEMID, :IN_SLSDT, :IN_SALES);
.DML LABEL DELETE_DAILY ;
DELETE FROM TDFACT.DAILY_SALES_TPUMP
WHERE ITEMID = :IN_ITEMID AND SALESDATE = :IN_SLSDT;
.IMPORT INFILE D:\daily_sales_vartext_mload.csv
FORMAT VARTEXT '|'
LAYOUT Record_Layout
APPLY
INSERT_DAILY
WHERE IN_IND = 'I'
APPLY
UPSERT_DAILY
WHERE IN_IND = 'U'
APPLY
DELETE_DAILY
WHERE IN_IND = 'D';
.END LOAD ;
.LOGOFF ;

Вам также может понравиться