Program Units and Referenced Objects (244)

Oracle automatically invalidates a program unit when the definition of a referenced
object is altered. For example, assume that a standalone procedure includes several
statements that reference a table, a view, another standalone procedure, and a public
package procedure. In that case, the following conditions hold:
■ If the referenced table is altered, then the dependent procedure is invalidated.
■ If the base table of the referenced view is altered, then the view and the dependent
procedure are invalidated.
■ If the referenced standalone procedure is replaced, then the dependent procedure
is invalidated.
■ If the body of the referenced package is replaced, then the dependent procedure is
not affected. However, if the specification of the referenced package is replaced,
then the dependent procedure is invalidated. This is a mechanism for minimizing
dependencies among procedures and referenced objects by using packages.
■ Whenever you create a table, index, and view, and then drop the table, all objects
dependent on that table are invalidated, including views, packages, package
bodies, functions, and procedures.

程序结构和引用对象
1. 如果引用包体被替换,则依赖过程不受影响。但是当引用包的声明被替换后,依赖过程将处于无效状态

[@more@]
请使用浏览器的分享功能分享到微信等