Procedure 내용 찾기
특정 테이블이 사용되는 프로시저를 찾거나, 특정한 구문이 포함된 프로시저를 찾아야 할 때가 있다.
간단한 쿼리로 해당 프로시저를 찾을 수 있으며, 프로시저가 아닌 Function / Trigger /Package 등의 내용을 찾을때도 사용 할 수 있다.
Query
select a.object_id,
a.object_name,
a.object_type,
b.line,
b.text
from DBA_OBJECTS a
inner join DBA_SOURCE b
on a.object_name = b.name
where a.object_type = 'PROCEDURE' -- FUNCTION / TRIGGER / PACKAGE
and a.owner = '[Owner Name]'
and upper(b.text) like '%[프로시저 내에서 찾을 구문 대문자]%'
해당 쿼리를 사용하면 프로시저 내에서 찾을 구문을 포함한 프로시저 내의 행을 반환한다.
조건절 object_type = 'PROCEDURE' 부분에 FUNCTION / TRIGGER / PACKAGE 등 다른 오브젝트 타입을 넣어 다른 오브젝트를 찾을 수 도 있다.
반응형
'DATABASE > Oracle' 카테고리의 다른 글
[Oracle] 오라클 종료 - Shut Down Option (0) | 2024.11.22 |
---|---|
[Oracle] 프로시저 내에서 DDL 실행하기 - Create, Drop, Atler, Truncate, CTAS (0) | 2024.11.21 |
[Oracle] DML Trigger - 테이블에서 사용하는 트리거 정리 (0) | 2024.11.11 |
[Oracle] 테이블 정의서 만들기 - 쿼리로 추출하기 (0) | 2024.04.02 |
[Oracle] External Table - 외부 CSV 파일을 테이블로 만들기 (0) | 2024.03.30 |
[Oracle] Table / Column Comment - 코멘트, 설명 달기 (0) | 2024.01.26 |
[Oracle] 11g 시퀀스 (Sequence) 컬럼 자동 증가 값 (1) | 2023.08.09 |
[DBA][Oracle] 자주 쓰는 쿼리 - TableSpace 용량 및 파일 위치 확인 (1) | 2023.08.08 |