메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

ORACLE 프로시져

DB CAFE
Dbcafe (토론 | 기여)님의 2024년 9월 30일 (월) 02:38 판 (새 문서: == 프로시져 == === 프로시져 재 컴파일 === <source lang="sql"> ALTER PROCEDURE [PROCEDURE NAME] COMPILE; </source> <source lang="sql"> SELECT 'ALTER PROCEDURE '||OBJECT_NAME||' COMPILE;' DSQL FROM USER_PROCEDURES WHERE OBJECT_TYPE = 'PROCEDURE' ORDER BY OBJECT_NAME ; </source> === 프로시져 소스 조회 === <source lang="sql"> SELECT * FROM DBA_SOURCE WHERE TYPE='PROCEDURE' AND TEXT LIKE '%PROD_ID%'; </source> == 패키지에서 주석처리 되...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

프로시져

프로시져 재 컴파일

ALTER PROCEDURE [PROCEDURE NAME] COMPILE;
SELECT 'ALTER PROCEDURE '||OBJECT_NAME||' COMPILE;' DSQL
  FROM USER_PROCEDURES
 WHERE OBJECT_TYPE = 'PROCEDURE'
 ORDER BY OBJECT_NAME
;


프로시져 소스 조회

SELECT *
  FROM DBA_SOURCE
 WHERE TYPE='PROCEDURE'
   AND TEXT LIKE '%PROD_ID%';

패키지에서 주석처리 되지 않은 항목 조회

오라클 사용자가 사용하는 패키지의 BODY 소스를 검색하여
주석이 없거나 패턴이 맞지 않는 항목을 조회 한다.


 
SELECT * FROM DBA_OBJECTS B 
 WHERE B.OWNER =:IN_OWNER 
   AND B.OBJECT_TYPE = 'PACKAGE BODY' 
   AND B.STATUS <> 'INVALID' -- VALID 상태만 조회, 만약 INVALID 된다고 해도 패키지를 수행하는 순간 컴파일 됨. 
   AND NOT EXISTS (SELECT 1
                     FROM DBA_SOURCE A
                    WHERE A.OWNER = B.OWNER
                      AND A.TYPE = B.OBJECT_TYPE
                      AND A.NAME = B.OBJECT_NAME
                      AND A.LINE <= 5
                      AND A.TEXT LIKE '%NAME%');