什么情况导致Oracle包变得无效?
发布时间:2020-12-12 13:51:39 所属栏目:百科 来源:网络整理
导读:创建此问题的方案: 我们有一个包是另一个包的依赖,有时对“父”包进行更改会导致依赖包变为无效,但有时却不会. 它让我们感到意外. 简单地理解导致失效的原因非常有用,因此我可以预测/计划失效. 更改程序包所依赖的任何对象(例如表,视图,触发器,其他程序包)
创建此问题的方案:
我们有一个包是另一个包的依赖,有时对“父”包进行更改会导致依赖包变为无效,但有时却不会. 它让我们感到意外. 简单地理解导致失效的原因非常有用,因此我可以预测/计划失效. 更改程序包所依赖的任何对象(例如表,视图,触发器,其他程序包)都会自动将程序包标记为无效.正如上面的tuinstoel所说,Oracle在第一次使用时足够聪明,可以重新编译软件包.如果您对此感到担心,每次进行架构更改(例如表,过程)时,请运行DBMS_UTILITY.compile_schema(或让您的DBA执行此操作).这将强制编译所有包,并让您知道在找到错误之前,或者是否存在错误. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |