Oacle 생 성 job, Oacle 이상 처리

명령 창 에서 실행 합 니 다.
 variable 뒤의 변수 이름 은 뒷전  job = >: job (이것 과 같 습 니 다) 그렇지 않 으 면 "모든 변수 가 연결 되 어 있 는 것 이 아 닙 니 다" 라 는 오류 가 발생 합 니 다.실행 에 성공 하면 job 번 호 는 Oacle 에서 자동 으로 생 성 됩 니 다.
일반적으로 job 로 저장 소 를 호출 하 는 과정 에서 Oacle 이상 처 리 를 추가 합 니 다. 그렇지 않 으 면 job 가 잘못 되면 잘못 찾 을 수 없습니다.
1. job 만 들 기 (next date 에 주의 하 세 요! 시간 이 필요 하면 시간 을 쓰 세 요)
variable job1 number;
begin
  sys.dbms_job.submit(job => :job1,
                      what => 'p_main3_main1;',
                      next_date => to_date('01-02-2012 11:47:25', 'dd-mm-yyyy hh24:mi:ss'),
                      interval => 'SYSDATE+4/86400/5');
  commit;
end;
/

2. oracle 이상 처리 (저장 과정 중)
  2.1 오류 로그 테이블 만 들 기
create table t_sys_errors(
e_user varchar2(100),
e_date date,
error_code number,
error_message varchar2(255)) ;

  2.2 저장 과정 에서 로그 시트 에 이상 기록
declare 
       error_code number;                     -->    ,
       error_message varchar2(255);       --> 11g   512,   10g   255
    begin
      ...
      exception
          when others then
               rollback;
               error_code := sqlcode;              -->    ,       
               error_message := sqlerrm         -->     ,       
          insert into errors(e_user,e_date,error_code,error_message) values (user,sysdate,error_code,error_message);      -->    ,           
     end; 

좋은 웹페이지 즐겨찾기