powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Иерархический запрос в Oracle
11 сообщений из 11, страница 1 из 1
Иерархический запрос в Oracle
    #39287310
profias
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.Необходимо сделать запрос,который покажет всю цепочку источников view.
Запрос возвращает для объекта объекты, от которых он зависит.
Делаю следующее:
SELECT a.object_type, a.object_name, b.owner, b.object_type, b.object_name,
b.object_id, b.status
FROM SYS.dba_objects a,
SYS.dba_objects b,
(SELECT object_id, referenced_object_id
FROM public_dependency
START WITH object_id =
(SELECT object_id
FROM SYS.dba_objects
WHERE owner = 'OWNER1'
)
CONNECT BY PRIOR referenced_object_id = object_id) c
WHERE a.object_id = c.object_id
AND b.object_id = c.referenced_object_id
AND a.owner NOT IN ('SYS', 'SYSTEM')
AND b.owner NOT IN ('SYS', 'SYSTEM')
Как итог выдает ошибку:
ORA-01427: подзапрос одиночной строки возвращает более одной строки
Как избавиться от этой ошибки?Помогите,пожалуйста
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287322
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
profiasКак избавиться от этой ошибки?Дропнуть все объекты, кроме одного, пользователя OWNER1.
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287323
Бельфя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Например заменив третий источник на такой
Код: plsql
1.
2.
3.
4.
5.
6.
(select object_id
              ,referenced_object_id
          from public_dependency
         start with object_id IN (select object_id
                                   from sys.dba_objects
                                  where owner = 'OWNER1')
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287325
profias
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,
Нет прав удалять.К тому же хочется именно подправить запрос.Но пока не получается.
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287335
profias
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Бельфя,
Спасибо вам огромное!Все получилось.Можете объяснить почему IN сработал?
И еще : как сделать не все объекты,а только зависимости именно view.
Пытался добавить WHERE ,но выдало пустоту...(((
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287342
ora601
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
profiasБельфя,
Спасибо вам огромное!Все получилось.Можете объяснить почему IN сработал?


Потому что для операции =, подзапрос должен возвращать только одно значение. О чем и говорилось в тексте ошибки.
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287349
Бельфя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
profias,

как оракл и ругается запрос
Код: plsql
1.
2.
3.
select object_id
                                   from sys.dba_objects
                                  where owner = 'OWNER1'


возвращает больше одной строки.
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287351
profias
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ora601,
Эх,блин.Спасибо большое за помощь.
Сейчас запрос выдал зависимости.А он выдает именно все зависимости?
Например,вьюха1-вьюха2-вьюха3-таблица1.
Или он только вьюха1-таблица,т.е первый и конечный объект?Объясните,пожалуйста.
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287371
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287418
profias
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic,
Спасибо большое,но это как раз таки показывает таблицу исчтоник вьюхи,а мне нужна именно полная цепь.
В указанной вами теме каждой вьюхе соответствует таблица.
Мне это тоже нужно,но нужна вся цепочка.
Например,вьюха1-вьюха2-вьюха3-таблица1.
Мой пример более подходит.Просто не могу понять,он показывает весь путь?
...
Рейтинг: 0 / 0
Иерархический запрос в Oracle
    #39287423
profias
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic ,
Я правильно понял указанную вами тему?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Иерархический запрос в Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]