programing

오라클에서 절차의 정의를 인쇄하는 방법은 무엇입니까?

mailnote 2023. 6. 20. 21:47
반응형

오라클에서 절차의 정의를 인쇄하는 방법은 무엇입니까?

오라클에서 프로시저의 구조를 확인할 수 있는 방법이 있습니까?로그를 기록하고 절차를 실행 중이며 실제 절차 구조를 로그에 저장하려고 합니다.

질문할 수 있습니다.ALL_SOURCE테이블

SELECT text 
  FROM all_source
 WHERE owner = <<owner of procedure>>
   AND name  = <<name of procedure>>
 ORDER BY line

패키지에 포함된 절차를 처리하는 경우

SELECT text 
  FROM all_source
 WHERE owner = <<owner of procedure>>
   AND name  = <<name of procedure>>
   AND type  = 'PACKAGE BODY'
 ORDER BY line

패키지 본문의 텍스트를 제공합니다.또한 다음을 사용하여 패키지 사양의 텍스트를 얻을 수 있습니다.TYPE"패키지"의

dbms_dll 패키지, get_ddl 함수?

SELECT dbms_metadata.get_ddl('PROCEDURE','<yourproc>','<schema>') FROM dual;
SELECT TEXT, LINE FROM ALL_SOURCE WHERE 
    NAME = UPPER('$name') -- the table also has an owner field to track the user
    ORDER BY TYPE, -- type is generally procedure, but there are functions and 
                   -- more complex structures as well, such as PACKAGE
    TO_NUMBER( LINE )

언급URL : https://stackoverflow.com/questions/7167307/how-to-print-out-the-definition-of-a-procedure-in-oracle

반응형