簡體   English   中英

Informatica中日期數據類型的問題

[英]Issue with datatype of Date in Informatica

我創建了一個可重用的轉換,其中有一個日期/時間格式的輸入端口。

現在,當我在Java代碼中使用此日期/時間端口時,它給了我不兼容的錯誤long / date。

因此,我將java轉換的輸入端口更改為String,並在java轉換中使用了此字符串變量。 但是,即使這段代碼也給了我一個錯誤。

Severity    Timestamp   Node    Thread  Message Code    Message
INFO    26-04-2016 16:55:30 node01_Gizmo    READER_1_1_1    RR_4049 RR_4049 SQL Query issued to database : (Tue Apr 26 16:55:30 2016)
INFO    26-04-2016 16:55:30 node01_Gizmo    READER_1_1_1    RR_4050 RR_4050 First row returned from database to reader : (Tue Apr 26 16:55:30 2016)
INFO    26-04-2016 16:55:30 node01_Gizmo    READER_1_1_1    BLKR_16019  Read [10] rows, read [0] error rows for source table [CUSTOMERS] instance name [CUSTOMERS]
INFO    26-04-2016 16:55:30 node01_Gizmo    READER_1_1_1    BLKR_16008  Reader run completed.
INFO    26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    JAVA PLUGIN_1762    [DEBUG] Unparseable using java.text.SimpleDateFormat@9586200
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    JTX_1005    [ERROR] Column name [05/06/1998 00:00:00.000000] is invalid.
INFO    26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    JTX_1015    [DEBUG] Exception thrown from Java transformation: [Column name [05/06/1998 00:00:00.000000] is invalid.].
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    JAVA PLUGIN_1762    [ERROR] Column name [05/06/1998 00:00:00.000000] is invalid.
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    JAVA PLUGIN_1762    [ERROR]     at com.informatica.powercenter.server.jtx.JTXPartitionDriverImplFixed.isNull(JTXPartitionDriverImplFixed.java:737)
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    JAVA PLUGIN_1762    [ERROR]     at com.informatica.powercenter.server.jtx.JTXPartitionDriverImplGen.execute(JTXPartitionDriverImplGen.java:223)
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    TM_6085 A fatal error occurred at  transformation [DateFormat], and the session is terminating. 
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    TM_6085 A fatal error occurred at  transformation [SQ_CUSTOMERS], and the session is terminating. 
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    TM_6085 A fatal error occurred at  transformation [SQ_CUSTOMERS], and the session is terminating. 
ERROR   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    TM_6085 A fatal error occurred at  transformation [SQ_CUSTOMERS], and the session is terminating. 
DEBUG   26-04-2016 16:55:30 node01_Gizmo    TRANSF_1_1_1    DBG_21511   TE: Fatal Transformation Error.
INFO    26-04-2016 16:55:30 node01_Gizmo    WRITER_1_*_1    WRT_8167    Start loading table [DateFormat] at: Tue Apr 26 16:55:30 2016
INFO    26-04-2016 16:55:30 node01_Gizmo    WRITER_1_*_1    WRT_8333    Rolling back all the targets due to fatal session error.
ERROR   26-04-2016 16:55:30 node01_Gizmo    WRITER_1_*_1    WRT_8170    Writer run terminated: Abort Session request received from the DTM
INFO    26-04-2016 16:55:30 node01_Gizmo    WRITER_1_*_1    WRT_8168    End loading table [DateFormat] at: Tue Apr 26 16:55:30 2016
INFO    26-04-2016 16:55:30 node01_Gizmo    WRITER_1_*_1    WRT_8035    Load complete time: Tue Apr 26 16:55:30 2016

LOAD SUMMARY
============

WRT_8036 Target: DateFormat (Instance Name: [DateFormat1])
WRT_8044 No data loaded for this target



INFO    26-04-2016 16:55:30 node01_Gizmo    WRITER_1_*_1    WRT_8043    *****END LOAD SESSION*****

Day是String類型的輸出端口。 以下是java轉換中使用的代碼:

SimpleDateFormat formatter;
formatter = new SimpleDateFormat("dd-MM-yyyy");
Date my_date = null;
try{
    my_date = formatter.parse(Inp_Date);
}
catch(Exception e) { 
          System.out.println("Unparseable using " + formatter); 
      }
    formatter = new SimpleDateFormat("d");
    Day=formatter.format(my_date);

請讓我知道如何在java轉換中使用日期/時間變量。

問候,敏捷。

您應該使用帶有表達式TO_CHAR(inp_Date,'dd')的表達式TO_CHAR(inp_Date,'dd')來進行此類轉換。

在您的Java代碼中,格式字符串(dd-MM-yyyy)與輸入日期格式(05/06/1998 00:00:00.000000)不匹配。 應該將其更改為以下內容:

formatter = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss.SSSSSS");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM