Как установить версию OJDBC в PL SQL Developer - PullRequest
0 голосов
/ 04 июля 2018

Когда я запускаю следующий код на моем сервере в «Oracle SQL Developer», он работает правильно и выводит данные таблицы в вывод:

declare
rc sys_refcursor;
begin
    open rc for select * from LOCATION where rownum < 10;
    dbms_sql.return_result(rc);
end;

Но когда я запускаю тот же код в «PL / SQL Developer» на стороне клиента, я получаю следующую ошибку:

ORA-29481: неявные результаты не могут быть возвращены клиенту. ORA-06512: в «SYS.DBMS_SQL», строка 2832 ORA-06512: в «SYS.DBMS_SQL», строка 2826 ORA-06512: в строке 5

Просмотр программных источников стека ошибок?

Я знаю, что это из-за драйвера OJDBC на стороне клиента, поэтому я установил последнюю версию драйвера OJDBC (12c) на стороне клиента, но все равно получаю это сообщение об ошибке.

Похоже, что "PL / SQL Developer" все еще использует старый драйвер OJDBC.

Я просмотрел все настройки «PL / SQL Developer» и не увидел ничего подходящего для этого. Также нет способа определить его в соединении или в определении TNS.

Есть ли у вас какие-либо идеи, как я могу сказать "PL SQL developer" использовать версию 12c драйвера JDBC?

1 Ответ

0 голосов
/ 04 июля 2018

Если вы говорите обо всех автоматизациях PL / SQL Developer, то это не имеет ничего общего с jdbc, как показывает форум: http://forums.allroundautomations.com/ubb/ubbthreads.php?ubb=showflat&Number=53031

Однако, возможно, вы можете выбрать другую библиотеку OCI в Предпочтения -> Соединения -> Библиотека OCI.

Ваш код работает как минимум с PL / Sql Developer 10 с oracle 12 oci.dll. Эта опция доступна с версии 8

Этот экран взят из демонстрационной версии Pl / Sql Developer 12 с 12.1 oci.dll и oracle 12.2 db. Я полагаю, что результат неявного утверждения доступен из 12.1.

enter image description here

...