错误代码[20001]; ORA-20001:ERROR-ORA-01843:无效月份

问题描述 投票:0回答:1

0

我想将数据插入表中。所有列中有两个是日期类型。但是我得到了错误代码[20001]; ORA-20001:ERROR-ORA-01843:无效月份。

这是我的存储过程

PROCEDURE PR_SP_FAHMI (P_T_TABLE_UPLD_EXCEL IN PARAMS.EXCEL)
   is 
  P_LOGID VARCHAR2(255);
BEGIN
BEGIN
  INSERT INTO 
  PARAMS.EMPTY
  SELECT 
  C.PARA_OBJT_GROUP            ,
  C.PARA_OBJT_CODE             ,
  C.PARA_PROD_MATRIX_ID        ,
  C.PARA_PROD_CHANNEL_ID       ,
  C.PARA_PROD_SALES_GROUP_ID   ,
  C.PARA_CUST_GROUP            ,
  C.PARA_SLS_THROUGH_ID        ,
  C.ACTIVE                     ,
  C.LOGID                      ,
  TO_DATE (C.CREATED_DATE,'dd/MM/yyyy HH24:MI:SS')  ,
  C.CREATED_BY                 ,
  TO_DATE (C.MODIFIED_DATE,'dd/MM/yyyy HH24:MI:SS')  ,              ,
  C.MODIFIED_BY                ,
  C.PARA_APPL_TAG
  FROM TABLE(P_T_TABLE_UPLD_EXCEL) C;
  EXCEPTION
        --  WHEN NO_DATA_FOUND THEN
    WHEN DUP_VAL_ON_INDEX THEN
                NULL;
            WHEN OTHERS THEN
                RAISE_APPLICATION_ERROR(-20001, 'ERROR-' || SQLERRM);
        END;
END PR_SP_FAHMI;

这是我的类型:

CREATE OR REPLACE TYPE EXCEL AS TABLE OF PARAMS.T_OBJECT_FROM_EXCEL

这是我的对象:

CREATE OR REPLACE TYPE "T_OBJECT_FROM_EXCEL" FORCE AS OBJECT (
  para_objt_group            VARCHAR2(3),
  para_objt_code             VARCHAR2(3),
  para_prod_matrix_id        VARCHAR2(5),
  para_prod_channel_id       VARCHAR2(5),
  para_prod_sales_group_id   VARCHAR2(5),
  para_cust_group            VARCHAR2(3),
  para_sls_through_id        VARCHAR2(2),
  active                     NUMBER(1),
  logid                      NUMBER,
  created_date               VARCHAR2(255),
  created_by                 VARCHAR(20),
  modified_date              VARCHAR2(255),
  modified_by                VARCHAR(20),
  para_appl_tag              VARCHAR(8)
)
java sql oracle date procedure
1个回答
0
投票

用[替换TO_DATE (C.CREATED_DATE,'dd/MM/yyyy HH24:MI:SS')

TO_DATE (C.CREATED_DATE,'DD/MM/YYYY HH24:MI:SS')
© www.soinside.com 2019 - 2024. All rights reserved.