본문 바로가기
공부방/DataBase

[Oracle] 프로시저 내용 조회

by SmartCow 2023. 2. 24.

프로젝트에 투입되어 일을 하다보면 

혼자 일하는게 아니라서 내가 만들지 않은 부분에 대해 조회를 해봐야하는 경우가 있는데 정리되어 있는 문서가 없을 경우 찾아보기가 난해할때가 있다. 그럴때 유용한 기능 중 하나

 

▶ 프로시저, 함수 등의 내용 검색

SELECT A.OBJECT_ID
             , A.OBJECT_NAME
             , A.OBJECT_TYPE
             , A.TEXT
   FROM USER_OBJECTS A
  INNER JOIN USER_SOURCE B ON A.OBJECT_NAME = B.NAME
WHERE A.OBJECT_TYPE IN ("찾고자하는 프로시저 등") /* PROCEDURE, FUNCTION, PACKAGE BODY, PACKAGE 등 */
AND A.TEXT LIKE '%찾으려하는 문구(단어)%'  /* 찾으려는 프로시저 또는 함수 내 문구 입력 */

USER_OBJECTS 테이블 : DB에 존재하는 모든 오브젝트의 목록 정보(TABLE, VIEW, PROCEDURE, FUNCTION, ..)

USER_PROCEDURES 테이블 : DB에 존재하는 프로시저 목록 정보

USER_SOURCE 테이블 : 프로시저의 내용과 TYPE 정보

 

OBJECT_TYPE 항목

PROCEDURE, FUNCTION, PACKAGE, PACKAGE BODY, TRIGGER, TYPE(이건 잘모르겠다.)

 

 

 프로시저 검색

SELECT * 
  FROM USER_PROCEDURES 
WHERE OBJECT_NAME LIKE '%검색할 단어%';

 

 프로시저 내용조회

SELECT TEXT
   FROM USER_SOURCE
WHERE NAME LIKE '%%'

등등

 

USER_OBJECTS 테이블에 포함된 컬럼을 조건으로 검색하면 필요한 내용을 뽑아낼수 있을거같다.

 

 기타(잡스케쥴조회)

SELECT * FROM ALL_JOBS;
SELECT * FROM USER_JOBS;

 

 

참조

 

[Oracle]Oracle 프로시저(Procedure) 내용 조회

USER_OBJECTS 테이블 : DB에 존재하는 모든 오브젝트의 목록 정보가 있음(TABLE, VIE...

blog.naver.com

 

'공부방 > DataBase' 카테고리의 다른 글

[Oracle] MERGE기능  (0) 2023.11.19
[Oracle] 월별 마지막 날짜 조회  (0) 2023.08.06
[mariaDB] mariaDB 란?  (0) 2022.12.03
[Oracle]ORA-28002 에러  (0) 2022.02.26
[Oracle]데이터베이스 계정 관련 명령어  (0) 2020.11.02