DBMS_JOB의 서브 프로그램

    DBMS_JOB 패키지에 내장된 서브 프로그램에 대해 살펴보기 전에 먼저 실행될 작업, 즉 프로그램을 준비해 놔야 한다. 여기서는 간단한 테이블을 만든 후 이 테이블에 INSERT하는 프로시저로 테스트해 보자. 먼저 다음과 같이 테이블을 생성하자.

    입력

        CREATE TABLE ch15_job_test (
                seq          NUMBER,
                insert_date  DATE);
    

    결과

        table CH15_JOB_TEST이(가) 생성되었습니다.
    

    입력

        CREATE OR REPLACE PROCEDURE ch15_job_test_proc
        IS
          vn_next_seq  NUMBER;
        BEGIN
          -- 다음 순번을 가져 온다
          SELECT NVL(MAX(seq), 0) + 1
            INTO vn_next_seq
            FROM ch15_job_test;
    
          -- ch15_job_test 테이블에 INSERT
          INSERT INTO ch15_job_test VALUES ( vn_next_seq, SYSDATE);
    
          COMMIT;
    
        EXCEPTION WHEN OTHERS THEN
          ROLLBACK;
          DBMS_OUTPUT.PUT_LINE(SQLERRM);
        END;
    

    결과

        PROCEDURE CH15_JOB_TEST_PROC이(가) 컴파일되었습니다.
    

    사전 준비는 끝났다. 이제 본격적으로 DBMS_JOB 패키지에 속한 프로시저에 대해 살펴 보자.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.