Oracle数据库,判断过程执行后是否会引起其他过程失效+查找失效对象并执行
方法1:
–查看过程是否被其他的过程调用,以此可判断正式机过程是否会失效
select *
from all_source a
–此处直接用过程,包等名字,只要调用了这个过程的,就会引起失效了,不需要具体到里面某一个程序
where upper(a.text) like ‘%过程/包…的名字%’
order by a.TYPE, a.OWNER, a.name;
方法2:
-
工具>>首选项>>调试器:将编译时添加调试信息去掉勾选
-
当前用户改成所有用户,点击编译失效对象小图标(带红色叉叉的那个),此时所有失效对象都会出来了;点击执行后,也重新编译失效对象。
-
如果想要看到一个包,过程等执行之后,是否会引起其他的包,过程等失效,则可在执行上面两个步骤之后,再次点击执行查找失效对象,再执行包,过程,然后再次点击查找失效对象。如果编译包,过程前后的失效对象数目不一样,增加了。那么说明此包,过程执行之后会引起其他的包,过程失效。