Oracle/Database

PL/SQL Developer 에서 View Spec & Body 가 정상적으로 보이지 않을 때

닥터 후 2012. 1. 5. 08:21

ERP DB 의 APPS 계정으로 ALL_SOURCE 등을 통해 Objects 의 Descriptions 을 뽑아낼 수 있다.
또는 dbms_metadata 를 통해서도 추출할 수 있다.


select
   dbms_metadata.GET_DDL('PROCEDURE',object_name)
from
   user_objects
where
   object_type = 'PROCEDURE';


구성에 따라 sys 권한에서만 가능할 수 있다. (별도 선행 작업 필요)

set long 2000000000

select DBMS_METADATA.GET_DDL('MATERIALIZED_VIEW','OE_ODR_LINES_SN') from dual;




추가 참고자료 : http://cafe.naver.com/metanetbts/1047





APPS 와 동일한 권한들(select any table... 등의 권한)이 부여된 DB User 에서 동일한 Action 을 취하게 되면 어떨까?

권한은 동일한 것으로 보이나,

다음과 같은 쿼리로 추출 시 Package Body 만 조회가 되지 않는다.


SELECT *

  FROM all_source

WHERE name = 'XXXX_PKG'

order by name, line


Orange Tool 을 이용해 'Full Descriptions(F4)' 을 통해 원하는 Objects 의 Description 을 열면 잘 열린다.

PL/SQL Developer Tool 에서는 어떨까?

마우스 오른쪽 클릭하여 View Spec & Body 를 선택시 여전히 Package Body 부분만 추출이 불가능하다.





 PL/SQL Developer 's Menu - Tools - Preferences - Options - "Use DBA Views if available" 을 체크하면 정상적으로 Package Body 도 추출이 가능해진다.