Как вызвать функцию Oracle, возвращающую таблицу рекордов - PullRequest
5 голосов
/ 12 марта 2012

Мне нужно получить данные из функции, которая возвращает таблицу записей. Например

Пакет pkg1

Запись, определенная внутри пакета:

type rec is record(id number,name varchar2(40));

Таблица рекордов, определенная внутри пакета:

type rec_tbl is table of rec;

Функция, определенная внутри пакета:

FUNCTION get_rec_tbl() RETURN rec_tbl;

Теперь, что мне нужно сделать, это: Используя пружину jdbc или пружину jdbctemplate получить значения из функции и обработать ее. Я не уверен, как это сделать.

Может ли кто-нибудь помочь?

Ответы [ 2 ]

2 голосов
/ 17 декабря 2012

В качестве обходного пути вы можете просто выполнить такой запрос выбора:

select * from table(get_rec_tbl())
2 голосов
/ 12 марта 2012
Тип

RECORD напрямую не поддерживается драйверами Oracle JDBC.

Существует безобразный обходной путь , как говорится в официальной справке JDBC.Никогда не использовал его, подумал.

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