我試圖編譯一個PL/SQL包,我得到了以下錯誤:麻煩編譯或刪除一個Oracle包
ORA-04043: object SYS_PLSQL_77721_489_1 does not exist
在此之後,我再也無法重新編譯或丟棄包。
你有什麼建議嗎?
我試圖編譯一個PL/SQL包,我得到了以下錯誤:麻煩編譯或刪除一個Oracle包
ORA-04043: object SYS_PLSQL_77721_489_1 does not exist
在此之後,我再也無法重新編譯或丟棄包。
你有什麼建議嗎?
如果您有權訪問支持,則看起來像bug#3744836。類似的錯誤被描述爲here,涉及流水線功能和同義詞。
嘗試這樣做:
DROP TYPE SYS_PLSQL_77721_489_1;
DROP TYPE SYS_PLSQL_77721_DUMMY_1;
DROP PACKAGE BODY xxxx;
DROP PACKAGE xxx;
我有完全相同的問題和作品。對不起@Vicent,但你提供的鏈接不能解決問題。
這個問題的一個確認原因是PL/SQL類型使用流水線函數。這是一個錯誤,因此應該修復更新或完全修補的Oracle版本。解決方法是使用SQL類型(即create type whatever as object ...
)。
如果這不適用於您的情況,請編輯您的問題以包含更多詳細信息。
我認爲這對我有用。我想知道爲什麼?第一個語句試圖刪除一個不存在的對象,因此失敗。那「DUMMY」類型究竟是什麼? – 2015-08-04 12:09:06
這也適用於我們...不知道這裏真正發生了什麼,雖然...任何人都可以解釋問題的額外點! – JTech 2016-11-08 01:06:33
我能夠使用第二行(名稱爲「DUMMY」) 即DROP TYPE SYS_PLSQL_77721_DUMMY_1; 謝謝你的回答 – 2017-02-16 10:29:57