기술 정보
home
채널 소개
home

5074 에러 대응 방법

문서 유형
장애 해결
분야
App개발
키워드
숫자형변환
적용 제품 버전
6FS01
6FS02
6FS03
6FS04
6FS05
6FS06
6FS07
6FS07PS
7FS01
7FS02
7FS02PS
5SP1FS01
5SP1FS02
5SP1FS03
5SP1FS04
5SP1FS06
6FS01
6FS02
6FS03
6FS04
6FS05
6FS06
6FS07
6FS07PS
7FS01
7FS02
7FS02PS
1 more property

현상

쿼리 수행 시 5074:Given string does not represent a number in proper format 에러가 발생합니다.

원인

숫자형으로 변환하려는 값에 숫자가 아닌 문자가 포함되어 있어 변환 과정에서 오류가 발생합니다.

해결

문자가 포함되어 있는 데이터를 찾아 수정합니다.
아래는 재현 테스트입니다.
-- 테스트 케이스 -- 테이블 및 데이터 생성 create table t1 (c1 varchar(8), c2 number(8)); insert into t1 values ('1234567a', 12345678); insert into t1 values ('12345678', 12345678); commit; -- 에러나는 케이스 (숫자로 형변환되면서 문자가 나오면 에러) select * from t1 where c1 <> 12345678; ; -5074:Given string does not represent a number in proper format. -- 정상 케이스 select * from t1 where c1 <> '12345678'; C1 C2 -------- ---------- 1234567a 12345678 1 row selected. 문자 포함된 데이터 찾는 방법 -- 숫자외 문자가 포함된 로우 찾는 쿼리1 select * from t1 where translate(c1, '0123456789', ' ') is not null; C1 C2 -------- ---------- 1234567a 12345678 1 row selected. -- 숫자외 문자가 포함된 로우 찾는 쿼리2 select * from t1 where not regexp_like(c1, '^\d+$'); C1 C2 -------- ---------- 1234567a 12345678 검색된 문자열을 삭제 및 갱신 후 쿼리 수행
SQL
복사