我有一个表CREATE TABLE SU2017
(
  MEA_TIME   CHAR(14 BYTE)                      NOT NULL,
  REELNO     CHAR(10 BYTE),
  CROWN      NUMBER(3)                          DEFAULT 0,
  WEDGE      NUMBER(3)                          DEFAULT 0,
  PLANENESS  NUMBER(3)                          DEFAULT 0
)并建立一张视图
CREATE OR REPLACE VIEW VSU2017
(MEA_TIME, REELNO, CROWN)
AS 
select (TO_Date(mea_time,'YYYYMMDDHH24MISS')) as mea_time ,
       reelno as reelno ,
    CROWN001 AS CROWN
FROM su2017;但是我每次视图查询,排序任何字段,和使用相关字段与其他表连接时都会弹出错误
ORA-01840 input value not long enough for data format !还请高手指点,谢谢!! 

解决方案 »

  1.   

    错误原因在这里:TO_Date(mea_time,'YYYYMMDDHH24MISS')你的mea_time只有14位,应该写成:TO_Date(mea_time,'YYYYMMDD HH24:MI:SS')
      

  2.   

    2楼大哥,按照你的方法,排序时会出现另一个错误
    ora-01843 not a valid month ! 我检查了数据,应该都已经为时间格式,为什么还是抱着个错?谢谢!