1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 在Oracle中重编译所有无效的存储过程

在Oracle中重编译所有无效的存储过程

时间:2021-07-12 19:58:05

相关推荐

在Oracle中重编译所有无效的存储过程

生活已是百般艰难,为何不努力一点。下面就给大家分享在Oracle中重编译所有无效的存储过程,希望可以让热爱学习的朋友们体会到设计的小小的乐趣。

SQL_PLUS中

spool ExecCompProc.sql

select 'alter procedure 'object_name' compile;' From all_objects where status = 'INVALID' and object_type = 'PROCEDURE';

spool off

@ExecCompProc.Sql;

整理成一个存储过程

Create Or Replace Procedure Zl_Compile_Invalid_Procedure As

Strsql Varchar2(200);

Begin

For x In (Select Object_Name From All_Objects Where Status = 'INVALID' And Object_Type = 'PROCEDURE') Loop

Strsql := 'Alter Procedure ' ' Compile';

Begin

Execute Immediate Strsql;

Exception

--When Others Then Null;

When OTHERS Then ();

End;

End Loop;

End;

执行

exec Zl_Compile_Invalid_Procedure;

假如要看到无法重编译的过程的出错信息,需要执行前设置set serverout on

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。