본문으로 바로가기

 

 

이번 글에서는 ORA-01481: invalid number format model 에러 해결 방법에 대하여 알아보도록 하겠습니다.

 

ORA-01481: invalid number format model

ORA-01481: 숫자 형식 모델이 부적합합니다.

 

 

쿼리를 짜다가 아래와 같은 에러가 종종 발생합니다.

 

 

예제를 통하여 에러가 발생한 이유와 해결 방법에 대하여 알아보도록 하겠습니다.

아래의 쿼리는 VARCAHR2 타입의 '20200601'을 VARCHAR2 타입으로 형 변환하여 조회하는 예제입니다. (벌써부터 이상하죠?)

 

위의 쿼리를 실행하니ORA-01481: invalid number format model 에러가 발생하였습니다.

 

이 에러가 발생한 이유는 이미 VARCHAR2 형식의 데이터를 VARCHAR2 형식으로 형 변환해서 발생한 에러입니다.

즉, '20200601' 이미 VARCHAR2 형식이죠? 따라서 VARCHAR2에서 VARCHAR2로 형 변환할 수는 없습니다.

 

 

해결 방법

위의 쿼리를 기준으로 날짜 형식으로 조회하게 하려면 TO_CHAR() 가 아닌 TO_DATE() 함수를 사용해야 합니다.

 

TO_DATE() 함수를 이용하여 다시 실행해 보도록 하겠습니다.

 

TO_CHAR()가 아닌 TO_DATE() 함수를 사용하니 쿼리가 제대로 동작하는 것을 확인할 수 있습니다.