Проверить, используется ли данный объект БД в Oracle? - PullRequest
4 голосов
/ 29 января 2010

Привет, кто-нибудь знает, как проверить, используется ли данный объект БД (Table / View / SP / Function) внутри Oracle.

Например, чтобы проверить, используется ли таблица «A» в любых определениях SP / Function или View. Я пытаюсь очистить неиспользуемые объекты в базе данных.

Я пробовал запрос select * из all_source WHERE TEXT, например "% A%" (A - это имя таблицы). Считаете ли вы, что можно с уверенностью предположить, что он не используется, если он не возвращает никаких результатов?

1 Ответ

3 голосов
/ 29 января 2010

Из этого вопроса ASKTOM :

Вам нужно будет включить аудит, а затем вернуться через 3 месяца, чтобы увидеть.

Мы не отслеживаем эту информацию по умолчанию - также, даже с аудитом, она может быть очень возможно иметь объект, к которому обращаются НЕПОСРЕДСТВЕННО (например: через внешний ключ для пример), который не будет отображаться.

Вы можете попробовать USER_DEPENDENCIES, но это не скажет вам об объектах, на которые ссылается код в клиентские приложения или через динамический sql

В потоке есть код для проверки ALL_SOURCE, но выделено, что это не серебряная пуля.

...