2010-10-07 83 views
0

大家好我是新來的數據庫。我試圖找出如何找到依賴於 另一個程序的程序。依賴於甲骨文:

下面的查詢是給我PROC1的的關係是不。從其中name = 'PROC1' user_dependencies稱爲由 PROC1

選擇REFERENCED_NAME即步驟;

下面的事情我想知道:

1)這是查詢工作,即使同爲功能。 ?這個查詢是遞歸的,即PROC1調用 - > PROC2調用 - > PROC3調用 - > PROC4 即:當我調用PROC1的查詢時,它給予所有依賴關係或只有一個級別依賴關係(即PROC2)。

3)如果程序包裏面找到的依賴什麼 應該是查詢?

回答

5
  1. 沒有,只示出了一個立即級依賴

  2. user_dependencies的僅示出了在封裝級的依賴關係,而不是爲包中的過程和功能。

PL/Scope(在11g中引入),可以在一個封裝內的過程/函數級別找到用途,但是如果當代碼被編譯的啓用它纔會起作用。

+0

一般:這是可能的是在包2的PROC2來調用包1的PROC1?有問題的查詢甚至可以識別觸發器。 ? – vrbilgi 2010-10-07 06:28:21

+0

@ user430294:是,只要PROC1在包首部中聲明;否則它是私有的,只能在Package1的主體中使用。而Package2的擁有者對Package1擁有執行權限。 – 2010-10-07 06:34:52

+0

@ user430294:是的,'user_dependencies'包含觸發器中的引用。 – 2010-10-08 05:20:45