Получите зависимости от таблиц, вызываемых из БД, благодаря DBLINK в oracle - PullRequest
0 голосов
/ 27 января 2020

У меня есть БД "myDB" в oracle, где DBLINK "MyDBLink" указывает на другую oracle БД "MyOriginalDB". Соединение работает. Я создал несколько таблиц и представлений в MyOriginalDB, и я создал представления в «myDB», указывая на них.

Например, мой View "Users_V" (в myDB) вызывает таблицу Users_T из MyOriginalDB:

SELECT * FROM Users_T@MyDBLink

Все работает.

Теперь мне нужно получить все представления и таблицы (все зависимости) в myDB, вызывающие объекты (таблицы и представления) из MyOriginalDB благодаря DBLINK.

Я пытаюсь выполнить этот запрос:

SELECT
name, referenced_name, referenced_type, dependency_type
FROM user_dependencies

Тем не менее, я не получаю все вызовы различных объектов (MyOriginalDB) из представлений в myDB благодаря DBLINK (@MyDBLink, используемому в запросах представлений).

Не могли бы вы помочь мне сделать это?

Заранее спасибо за помощь

1 Ответ

0 голосов
/ 27 января 2020

Согласно oracle documentmemtation :

DBA_DEPENDENCIES описывает все зависимости в базе данных между процедурами, пакетами, функциями, телами пакетов и триггерами, включая зависимости от созданных представлений без каких-либо ссылок на базу данных.

Таким образом, невозможно найти зависимости для представления, если оно создано с использованием db links. Вы должны использовать *_views, чтобы найти текст представлений и найти ссылку на БД в тексте представлений.

Cheers !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...