발생
- 업무 중 과거 데이터들을 수집하기 위한 스크립트를 작성하고 실행시키니 다음과 같은 오류 발생
- sqlDeveloper에선 발생하지 않으나 python의 cx_Oracle에서 실행할 때만 발생
- 해당 쿼리는 월 1일 ~ 월 말일 조건이 다수 존재하는 쿼리
원인파악
- 해당 에러는 말 그대로 date형 컬럼을 변환할 때(보통 to_date) 년도가 -4713에서 9999 사이의 값, 0이 아닌 값이여야 한다는 에러
- 테이블의 컬럼 타입과 입력한 데이터 타입이 다를 경우
- 데이터의 크기가 오라클의 MAX값을 초과한 경우
- 나의 경우는 datetime 객체를 std_date에 그대로 넣어버려서 문제가 발생
문제해결
--std_date : 기준년월 1일
SELECT data1, data2, date_data
FROM sample_table
WHERE date_data between TO_DATE('{std_date}','YYYYMMDD') AND LAST_DAY(TO_DATE('{std_date}','YYYYMMDD'))
'Etc > 오류 모음' 카테고리의 다른 글
[Python] Could not build wheels for pynacl, bcrypt which use PEP 517 and cannot be installed directly 해결 (0) | 2022.04.12 |
---|---|
[WSL2] Vmmem 비정상적인 메모리 점유 (0) | 2022.02.16 |
[Eclipse] Java 파일 수정사항 적용되지 않을 때 (0) | 2022.01.21 |
오라클(Oracle) 11g [INS-13001]환경이 최소 요구사항을 충족하지 않습니다. (0) | 2020.06.14 |