9. Обслуживание зависимостей
Тело пакета может быть только зависимым от чего-либо, на последовательность можно только ссылаться. Для остальных объектов БД возможно и то, и другое.
Посмотреть прямые зависимости можно в словаре USER_DEPENDENCIES
.
Каждый объект базы данных имеет одно из следующих значений статуса:
VALID
— объект был успешно скомпилирован с использованием текущего определения в словаре данных.INVALID
— объект помечен как недопустимый, поскольку объект, на который он ссылается, изменился (только для зависимых объектов).COMPILED WITH ERRORS
— последняя попытка компиляции объекта привела к ошибкам.UNAUTHORIZED
— право доступа на указанный объект было отозвано (только для зависимых объектов).
Статусы объектов можно посмотреть в словаре USER_OBJECTS
, однако статусы COMPILED WITH ERRORS
и UNAUTHORIZED
там отображаются как INVALID
.
Недостоверность зависимых объектов:
- Если процедура A напрямую зависит от представления B, которое напрямую зависит от таблицы C, то A косвенно зависит от C.
- (
A -> B, B -> C => A ~> C
).
- (
- Напрямую зависимые объекты становятся недействительными только в результате изменений объекта, на который они ссылаются.
- Косвенно зависимые объекты могут быть признаны недействительными из-за изменений ссылочного объекта, который на них не влияет.
(TODO).