본문 바로가기
카테고리 없음

[ORACLE] ORA-01843_월 형식 오류

by 준쓰_ 2024. 1. 16.

오류 유형

"cx_oracle.databaseerror: ora-01843: not a valid month"

ORA-01843

 

 

오류 설명

  • 포맷 방식이 oracle 내부 형식과 맞지 않아 발생하는 오류
  • 다만 python으로 동일한 포맷으로 맞춰 입력하여도 오류 지속 발생
  • 예시) 아래 REG_DT 형식에 맞춰 '23/12/31'과 같은 형식으로 입력하여도 오류 발생 

DB 내 DATE 포맷

 

 

해결 방안

  • ORACLE 내에서 'YY/MM/DD' 형식으로 출력되는 건 실제로 'YYYYMMDD' 형식인 것으로 추정
  • 하지만 python으로 datetime 데이터를 .strftime('%Y%m%d')로 바꾸어도 오류 지속 발생
  • 때문에 ORALCE 에 날리는 쿼리에서 TO_DATE(입력값, 'YYYYMMDD')를 적용하여 변경

TO_DATE 함수