ORA-01722 invalid numberCause: The attempted conversion of a character string to a number failed because the character string was not a valid numeric literal. Only numeric fields or character fields containing numeric data may be used in arithmetic functions or expressions. Only numeric fields may be added to or subtracted from dates.Action: Check the character strings in the function or expression. Check that they contain only numbers, a sign, a decimal point, and the character "E" or "e" and retry the operation.
在扫描数据的时候,一般会自动会根据where条件的数据类型进行转换匹配,但如果不能转换就只有报错.检查你的数据.

解决方案 »

  1.   

    看了
    [0] KAISYA_CD : 'YT ' CHAR(3)
    [1] REG_DT : '2003-02-27 00:00:00.0'DATE
    [2] REG_DT : '2003-02-27 23:59:59.0'DATE
    [3] SSZ_SBT_K : '02'        CHAR(2)
    [4] NSKA_GN_CD : '110'     CHAR(3)
    [5] NSKA_GN_CD : '910'      CHAR(3)
    [6] ACK_K : '1'CHAR(1)
    [7] HMK_GRP_YOTO_K : '11' CHAR(2)
    以上是对应条件的数据类型,如果说进行数据转换匹配的话,为什么还能检出数据呢?
      

  2.   

    举个简单例子:
    where substr(endday,4,2)=month   //month是number型
    而表中存在endday='TEST'的几条记录,由于to_number('TEST')是违反规则的,所以就报错退出了.
      

  3.   

    SUBSTR( A.HMK_CD ,6,3) = J.ATUMI
    A.HMK_CD CHAR(28)
    J.ATUMI NUMBER(3)明白了,是这里的问题。把J.ATUMI toChar()一下是不是就可以了