본문 바로가기
Data & Programming/Oracle

[Oracle-오류] ORA-01861 literal does not match format string (리터럴이 형식 문자열과 일치하지 않음)

by 눈부셔™ 2017. 4. 3.
728x90
 [Oracle-오류] ORA-01861 literal does not match format string (리터럴이 형식 문자열과 일치하지 않음)

■ 문제발생 : ORA-01861 literal does not match format string

                   ORA-01861 리터럴이 형식 문자열과 일치하지 않습니다

                   ORA-01861 문자열이 포맷 문자열에 맞지 않습니다

 

    - 오라클 Select시 간혹 Orange나 Toad 툴에서는 아무런 이상없이 데이터가 잘 조회되는데, 프로그램상에서 SQLIO 호출시 ORA-01816 에러가 나는 경우가 있다.

 

 

■ 문제원인 : 이 에러는 보통 날짜, 즉 컬럼의 형식이 DATE인데 STRING으로 비교하려거나 조건을 주려할 때 발생한다.

 

 

■ 문제해결 : String을 date형으로 변환해주던지, date형을 String으로 변환시켜 주면 해결 된다.

 

    1. Date형을 String형으로 변환

TO_CHAR(SYSDATE,'YYYYMMDD')

 

    2. String형을 Date형으로 변환

TO_DATE('2017-04-03','YYYYMMDD')
728x90