2016-06-24 9 views
0

Ich habe ein Problem mit der Fastload, wo meine Timestamp-Felder in die Fehlertabelle zurückgewiesen werden. Unten ist der Wert von timestamp (6) Feld in meiner flachen Datei. 23-06-2016 11: 51: 21,000000 23-06-2016 11: 51: 21,000000Problem mit Timestamp-Feld in Fload

Unten ist mein Code:

SET RECORD VARTEXT "¡"; 

DEFINE 

TRANSACTION_SOURCE_TYPE_ID (VARCHAR(54)) 
,TRANSACTION_SOURCE_TYPE_CODE (VARCHAR(20)) 
,TRANSACTION_SOURCE_TYPE_DESC (VARCHAR(110)) 
,EFFECTIVE_START_DATE (VARCHAR(54)) 
,EFFECTIVE_END_DATE (VARCHAR(54)) 
,COUNTRY_CODE (VARCHAR(13)) 
,SOURCE_SYSTEM_ID (VARCHAR(54)) 
,DW_LOAD_TIMESTAMP (VARCHAR(76)) 
,DW_UPD_LOAD_TIMESTAMP (VARCHAR(76)) 
,FORCE_SKEW_KEY (VARCHAR(51)) 


FILE=?INPUT_FILE; 
SHOW; 

INSERT INTO ?DWSBKPDB.TRANSACTION_TMP 
(
TRANSACTION_SOURCE_TYPE_ID 
,TRANSACTION_SOURCE_TYPE_CODE 
,TRANSACTION_SOURCE_TYPE_DESC 
,EFFECTIVE_START_DATE 
,EFFECTIVE_END_DATE 
,COUNTRY_CODE 
,SOURCE_SYSTEM_ID 
,DW_LOAD_TIMESTAMP 
,DW_UPD_LOAD_TIMESTAMP 
,FORCE_SKEW_KEY 
) 
VALUES 
(
:TRANSACTION_SOURCE_TYPE_ID 
,:TRANSACTION_SOURCE_TYPE_CODE 
,:TRANSACTION_SOURCE_TYPE_DESC 
,:EFFECTIVE_START_DATE (DATE, FORMAT 'YYYY-MM-DD') 
,:EFFECTIVE_END_DATE (DATE, FORMAT 'YYYY-MM-DD') 
,:COUNTRY_CODE 
,:SOURCE_SYSTEM_ID 
,:DW_LOAD_TIMESTAMP (TIMESTAMP, FORMAT 'YYYY-MM-DDBHH:MI:SS.S(6)') 
,:DW_UPD_LOAD_TIMESTAMP (TIMESTAMP, FORMAT 'YYYY-MM-DDBHH:MI:SS.S(6)') 
,:FORCE_SKEW_KEY 
); 

DW_LOAD_TIMESTAMP Problem hier ist, zu schaffen. Irgendeine Idee, warum das passiert.

Grüße, Amit

Antwort

1

offensichtlich nicht Ihre Daten nicht die FORMAT entsprechen.

:DW_LOAD_TIMESTAMP(TIMESTAMP, FORMAT 'DD-MM-YYYYBHH:MI:SS.S(6)') 
+0

Danke Dnoeth, Aber was ist los mit 23-06-2016 11: 51: 21.000000? – user3901666

+0

@ user3901666: Es ist in 'DD-MM-YYYY' Format anstelle von' YYYY-MM-DD' – dnoeth

+0

Dank Dnoeth..Weiß nicht, wie ich das verpasst habe. – user3901666