powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ora-02016
3 сообщений из 3, страница 1 из 1
ora-02016
    #39620373
Reflector
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Нужна помощь.
Подскажите, в чем может быть ошибка?
Пытался обработать запрос 2 вариантами, исход один и тот же.
Код: plsql
1.
2.
3.
4.
5.
6.
select d.DEP_AR_ID
                      from depart_for_dispatcher d
                    connect by d.DEP_ID = prior d.PAR_DEP_ID
                     start with d.DEP_ID in
                                (select distinct dep_id
                                   from table(dispatcher_pkg.WORKER_DISP_UCH_INFO(V_WORKER_ID)))



И второй вариант
Код: plsql
1.
2.
3.
4.
5.
6.
7.
WITH t AS
 (SELECT DISTINCT DEP_ID
  FROM TABLE(dispatcher_pkg.WORKER_DISP_UCH_INFO(260339659)))
SELECT a.DEP_AR_ID
FROM   argus_depart_for_dispatcher a
CONNECT BY a.DEP_AR_ID = PRIOR a.PAR_DEP_AR_ID
START  WITH a.DEP_AR_ID IN (SELECT t.dep_id FROM t)


Где argus_depart_for_dispatcher a-представление, собранное на той же БД, что и pipe-функция dispatcher_pkg.WORKER_DISP_UCH_INFO
В обоих вариантах ошибка в start with.ORA-02016: нет возможности использовать подзапрос в START WITH на удаленной базе данных
Есть какой-то вариант кроме создания коллекции и курсора?
...
Рейтинг: 0 / 0
ora-02016
    #39620408
efendi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
ora-02016
    #39620412
Reflector
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
efendi,

Спасибо за информацию.
Обошел так
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
WITH a AS
                       (SELECT DISTINCT DEP_ID
                       FROM   TABLE(dispatcher_pkg.WORKER_DISP_UCH_INFO(p_worker_id))),
                      a1 AS
                       (SELECT * FROM ARGUS_DEPART_FOR_DISPATCHER)
                      SELECT t.ar_reg_id,
                             t.ar_reg,
                             t.dep_ar_id,
                             t.disp_dep_name,
                             t.par_dep_ar_id
                      FROM   a1 t
                      START  WITH t.DEP_AR_ID IN (SELECT dep_id FROM a)
                      CONNECT BY t.DEP_AR_ID = PRIOR t.par_DEP_ar_ID
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ora-02016
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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