Мне нужно выполнить инструкцию Oralce PL / SQL с помощью jdbc, но я пытаюсь найти способ извлечения данных.
Вот мое заявление
DECLARE
l_xmltype XMLTYPE;
l_ctx dbms_xmlgen.ctxhandle;
BEGIN
l_ctx := dbms_xmlgen.newcontext('select * from myTable where rownun < 10;);
dbms_xmlgen.setrowsettag(l_ctx, 'My_DATA');
dbms_xmlgen.setrowtag(l_ctx, 'My_Element');
l_xmltype := dbms_xmlgen.getXmlType(l_ctx) ;
dbms_xmlgen.closeContext(l_ctx);
dbms_output.put_line(l_xmltype.getClobVal);
dbms_output.get_lines(?, l_xmltype);
End;
И мой код
CallableStatement cs = connection.prepareCall(plsql);
cs.registerOutParameter(1, Types.ARRAY,"DBMSOUTPUT_LINESARRAY");
cs.execute();
Array array = null;
array = cs.getArray(1);
Stream.of((Object[]) array.getArray())
.forEach(System.out::println);
И я получаю ошибку
java.sql.SQLException: ORA-06550: строка 1, столбец 380: PLS-00306: неверно
количество или типы аргументов в вызове 'GET_LINES'
Я не эксперт по PL / SQL или jdbc, поэтому я изо всех сил пытаюсь найти решение.