Oracle2020. 11. 6. 11:52
728x90
반응형
SMALL

 

 

오라클에서 ORA-01722 invalid number 오류를 뱉어낼 때가 있다.


처음엔 원인을 찾아내느라 좀 헤맸었다.

 

 

 

빨리 코딩해야되는데!!!이걸로 몇시간을!!!

 

 



아마..TO_NUMBER같은 함수를 VARCHAR 형에 감싸거나 하는 부분에서 에러가 나는 경우가 많을 것이다.

사실..지금 보면 로그 메시지만 봐도 어느 정도 감이 오긴 한다.




발생 이유>
1. 조건식 데이터 형식을 잘못 쓴 경우

2. 컬럼에 VARCHAR 데이터 형식이 잘못된 경우

3. 기타..

해결방법>
1. TRUNC, MOD, ROUND, CEIL 등의 함수를 사용할 때 문자를 넣은 곳이 있는지 확인

2. 조건식에서 문자와 숫자를 비교하는지 확인

3. 컬럼에 데이터 자체가 올바른지 확인





본인 같은 경우는 3번의 경우였고, TO_NUMBER를 해주었는데 VARCHAR 형식의 숫자 값에 콤마(,)가 들어가 있어서

생겼던 문제였다. 

REPLACE를 해주어서 해결했는데, 아마 대부분 이 이유가 많지 않을까 싶다.

728x90
반응형
LIST
Posted by 사슴영혼'-'