oracle編譯無效對象
可以用來重編譯資料庫的所有無效對象.通常我們會在Oracle的升級指導中看到這個腳本,Oracle強烈推薦在migration/upgrade/downgrade之後,通過運行此腳本編譯失效對象.腳本位於$ORACLE_HOME/rdbms/admin目錄.你可以看到utlrp.sql只是調用utlprp.sql,utlrp.sql在調用utlprp.sql的時候會傳遞給它一個參數,默認為0,這個參數其實就是並行度,其實utlprp.sql調用的是utl_recomp.recomp_parallel:
0 - 基於CPU_COUNT參數設置並行度.
1 - 以串列方式編譯對象,一次編譯一個.
N - 以N個並行度進行編譯.
腳本需要以sys用戶或者有sysdba許可權的用戶來運行.
Ⅱ plsql裡面的編譯無效對象是什麼意思
Oracle中出現無效對象,就是因為在創建函數或存儲過程等,里邊的內容書寫不正確導致。如果要重新編譯,需要先修正錯誤,然後編譯。
工具:Oracle 10g、PL/SQL
步驟:
1、在PL/SQL中打開出現編譯錯誤的函數或存儲過程,這里以存儲過程為例。
2、右鍵點擊該存儲過程,選擇「編輯」。
3、根據錯誤提示,找到錯誤,並修改錯誤。
4、改正錯誤後,點擊左上方的「齒輪」狀按鈕。
5、運行成功後,則該存儲過程就會變為編譯成功的狀態。
Ⅲ oracle資料庫怎麼刪除失效的對象
有兩種方法可以刪除SQL Server中的資料庫: 通過管理工具刪除 先打開SQL Server Management Studio並連接資料庫伺服器。 然後找到目標資料庫(需要刪除的),「右鍵」→「刪除」。 在彈出的的窗口中選擇要刪除的對象並設置相關屬性,然後點擊「確定」
Ⅳ oracle job提示無效資料庫對象名
Job Action關聯的Program對象失效了
Ⅳ oracle存儲過程對象無效
以下逐行寫,不要一寫復制進去
begin
demo1;
end;
/
第四行的反斜杠不能省略
Ⅵ oracle導完數據為什麼要編譯無效對象
網友採納如果無效對象的數量很少,那麼你可以逐個編譯這些對象. ALTER PACKAGE my_package COMPILE; ALTER PACKAGE my_package COMPILE BODY; ALTER PROCEDURE my_procere COMPILE; ALTER FUNCTION my_function COMPILE; ALTER TRIGGER my_trigger COMPILE; ALTER VIEW my_view COMPILE;
Ⅶ 如何重編譯ORACLE資料庫的無效對象
一些ORACLE中的進程被殺掉後,狀態被置為"killed",但是鎖定的資源很長時間不釋放,有時實在沒法,只好重啟資料庫。現在提供一種方法解決這種問題,那就是在ORACLE中殺不掉的,在OS一級再殺。1.下面的語句用來查詢哪些對象被鎖:selectobject_name,machine,s.sid,s.serial#fromv$locked_objectl,dba_objectso,v$sessionswherel.object_id=o.object_idandl.session_id=s.sid;2.下面的語句用來殺死一個進程:altersystemkillsession'24,111';(其中24,111分別是上面查詢出的sid,serial#)【注】以上兩步,可以通過Oracle的管理控制台來執行。3.如果利用上面的命令殺死一個進程後,進程狀態被置為"killed",但是鎖定的資源很長時間沒有被釋放,那麼可以在os一級再殺死相應的進程(線程),首先執行下面的語句獲得進程(線程)號:selectspid,osuser,s.programfromv$sessions,v$processpwheres.paddr=p.addrands.sid=24(24是上面的sid)4.在OS上殺死這個進程(線程):1)在unix上,用root身份執行命令:#kill-912345(即第3步查詢出的spid)2)在windows(unix也適用)用orakill殺死線程,orakill是oracle提供的一個可執行命令,語法為:orakillsidthread其中:sid:表示要殺死的進程屬於的實例名thread:是要殺掉的線程號,即第3步查詢出的spid。例:c:>orakillorcl12345
Ⅷ Oracle 定義存儲過程 不能執行,處於無效狀態。
無效狀態有兩種可能,一種是你的存儲過程編輯沒有成功,創建了,但裡面有語法錯誤。
還有一種是存儲過程使用的表有結構上的改變,需要重新編譯一下。
你重新編譯一下,如果不成功,就是有語法問題,你需要修改存儲過程。
Ⅸ 如何重編譯ORACLE資料庫的無效對象
如果無效對象的數量很少,那麼你可以逐個編譯這些對象.
ALTER PACKAGE my_package COMPILE;
ALTER PACKAGE my_package COMPILE BODY;
ALTER PROCEDURE my_procere COMPILE;
ALTER FUNCTION my_function COMPILE;
ALTER TRIGGER my_trigger COMPILE;
ALTER VIEW my_view COMPILE;
Ⅹ 如何重編譯ORACLE資料庫的無效對象
如果是用的pl/sql之類的可視化工具可以在對象列表中,右擊對象-重編譯即可