본문 바로가기
ㄱWORK, ETC/Oracle

oracle user_objects invalid object recompile

by YuyU유유 2021. 4. 14.
728x90
반응형

오라클 유효하지 않은 프로시저 등 (invalid object) 재컴파일하기

 

BEGIN

  FOR cur_rec IN (  

    SELECT OBJECT_NAME, OBJECT_TYPE 

      FROM USER_OBJECTS

     WHERE OBJECT_TYPE IN ('PROCEDURE', 'FUNCTION')

       AND STATUS != 'VALID'

  ) LOOP

    BEGIN

      EXECUTE IMMEDIATE 'ALTER ' || cur_rec.object_type || ' ' || cur_rec.object_name || ' COMPILE';

    EXCEPTION

      WHEN OTHERS        

      THEN

        DBMS_OUTPUT.PUT_LINE(SQLERRM);     

    END;

  END LOOP;

END;

 

DBA 권한을 가지고 있다면 USER_OBJECTS 대신에 DBA_OBJECTS 를 사용하여 모든 스키마의 오브젝트를 재컴파일할 수 있다.

[출처] 오라클 유효하지 않은 프로시저 등 (invalid object) 재컴파일하기|작성자 신히

728x90
반응형

'ㄱWORK, ETC > Oracle' 카테고리의 다른 글

Oracle Forms Error FRM-41370  (0) 2021.04.29
Oracle Forms> 화면 레코드 번호 뿌리기, 번호 매기기  (0) 2021.04.28
oracle universal installer 설치  (0) 2021.04.14
single_row 가져올때  (0) 2021.04.14
REGEXP_LIKE  (1) 2021.04.14