我是PL/SQL的初學者,所以我不知道這個問題是否合理。我試圖在Oracle 11g中的包(不是在模式下)下找到存儲過程的object_id。我試着查詢我認爲應包含SP的object_Id的以下系統表/視圖。存儲過程中的object_id存儲在Oracle中的哪個位置?
- ALL_PROCEDURES
- User_obects
的ALL_PROCEDURES觀點確實包含我找SP的名稱,但它僅包含包的對象ID。我想包下找到的存儲過程的object_id的原因是是:
一些PL/SQL程序員我談的來告訴我,包下的SPS /函數不被視爲一個對象。我想明白爲什麼。
我想知道,在同一個軟件包下有多少其他SP是否會被引用。我希望public_dependency視圖包含這個映射,除非有人告訴我這是錯誤的觀點。
如果SP /函數未被標識爲包下的對象,那麼如何獲取引用特定SP的SP列表?
我已經在Stackoverflow中發佈了另一個問題,這導致我到鏈接How do you programatically identify a stored procedure's dependencies?。但是在這篇文章中提到的腳本並沒有幫助我,因爲user_objects沒有包中的存儲過程的任何條目。它只在Schema下有SP。
是啊,我的想法是多少第一點相同.. – Sathya
感謝ZZA。我一直髮現,在Oracle中,簡單的事情很難實現(或沒有實現)。 – pradeeptp