본문 바로가기
IT 개발/에러

ORA-01843 지정한 월이 부적합 합니다. (+ CREATE_JOB 오류)

by Dev.Jeon 2023. 4. 11.
반응형

에러메시지

ORA-01843 : 지정한 월이 부적합 합니다.

ORA-01843 : not a valid month

 

현상/원인

- 월 데이터 형식 문제

- 존재하지 않는 날짜

BEGIN
    SYS.DBMS_SCHEDULER.CREATE_JOB
    (
      job_name  => 'SJ_ALARM_PROC'
        ,job_type  => 'STORED_PROCEDURE'
        ,job_action  => 'SP_ALARM_PROC'
        ,number_of_arguments  => 0
        ,start_date  => '2023/04/10 17:40:00.000000 +09:00'		--문제된 부분
        ,repeat_interval  => 'FREQ=MINUTELY;INTERVAL=10'
        ,end_date  => NULL
        ,job_class  => 'DEFAULT_JOB_CLASS'
        ,enabled  => TRUE
        ,auto_drop  => FALSE
        ,comments  => '경보 알림 프로시저 호출'
      );

END;

저의 경우는 CREATE_JOB 을 하는데 발생했습니다.

기존에 존재하는 스케줄 쿼리를 그대로 가져와서 사용했는데 에러가 나서 의아했는데요.

이 역시 형식이 문제가 된 것입니다.

 

 

해결

BEGIN
    SYS.DBMS_SCHEDULER.CREATE_JOB
    (
      job_name  => 'SJ_ALARM_PROC'
        ,job_type  => 'STORED_PROCEDURE'
        ,job_action  => 'SP_ALARM_PROC'
        ,number_of_arguments  => 0
        ,start_date  => to_date('202209150900','yyyymmddhh24mi')	--날짜 형식 변경
        ,repeat_interval  => 'FREQ=MINUTELY;INTERVAL=10'
        ,end_date  => NULL
        ,job_class  => 'DEFAULT_JOB_CLASS'
        ,enabled  => TRUE
        ,auto_drop  => FALSE
        ,comments  => '경보 알림 프로시저 호출'
      );

END;

시작날짜 start_date에  TO_DATE로 변경해서 작성하니 정상적으로 생성문이 적용되었습니다.

 

오랜만에 작업하면 종종 잊어버려서 기록해 둡니다.

여러분께 도움이 되었길 바랍니다! 

 

 

<참조사이트>

https://lookingfor.tistory.com/entry/ora-01843

 

 

반응형

댓글