溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

在ORACLE中找出并批量編譯失效的對象

發(fā)布時間:2020-09-01 10:30:21 來源:網(wǎng)絡(luò) 閱讀:552 作者:青苗飛揚 欄目:關(guān)系型數(shù)據(jù)庫

    每次數(shù)據(jù)庫升級之后,都需要對庫中的對象進行重新編譯一下。下面整理出了一個腳本,只需要執(zhí)行一下就能批量編譯這些失效的對象。需要注意的是:因權(quán)限問題,最好是選擇sys用戶來執(zhí)行這個腳本,如是plsql developer中執(zhí)行,記得選擇“ALL USERS”

    

[oracle@oracle ~]$ cat check_compile.sql 
set heading off; 
set feedback off; 
set echo off; 
Set lines 999; 
 
Spool run_invalid.sql 
 
select 'alter '||decode(object_type, 'VIEW', 'VIEW','TRIGGER','TRIGGER',
       'PROCEDURE', 'PROCEDURE', 'FOUNCTION','FUNCTION',
       'PACKAGE','PACKAGE', 'PACKAGE BODY', 'PACKAGE', 'MATERIALIZED VIEW') 
       ||' '||owner||'.'||object_name||' compile '||';' 
from dba_objects
where status like 'INV%'; 

spool off; 
set heading on; 
set feedback on; 
set echo on; 
 
@run_invalid.sql



向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI