Выполнить хранимую процедуру без ref_cursor в sql навигаторе
Я новичок в Oracle и SQL Navigator. Я не могу найти способ выполнить сохраненный процесс и увидеть его результаты. Процедура создается следующим образом. Как мне выполнить этот процесс в SQL Navigator. Я использую sql навигатор 6.7. Также, пожалуйста, имейте в виду, что процесс использует ref-курсор.
PROCEDURE getdata
( p_id IN VARCHAR2,
p_date IN DATE,
p_out OUT ref_cursor)
IS
BEGIN
OPEN p_out FOR
SELECT *
FROM OPS_ARW.logs
WHERE member_id = p_id
AND date>p_date;
END;
PS: я уверен, что это дубликат. Буду признателен, если вы сможете перенаправить меня только в нужное место, поскольку я не могу его найти.
1 ответ
Прошло много времени после вопроса, но, поскольку я трачу много времени на создание этого кода, вот мое решение для решения аналогичной проблемы. Примечание: моя процедура возвращает столбцы id, codboard, descrboard и TABNUM. Я использую Sql Navigator:
declare
l_list_boards sys_refcursor;
l_id number;
l_codboard VARCHAR2(50 BYTE);
l_descrboard VARCHAR2(250 BYTE);
l_TABNUM NUMBER;
begin
PACK_NAME.GetBoardsList(list_boards=> l_list_boards);
DBMS_OUTPUT.put_line ('Results: ');
loop
fetch l_list_boards into l_id, l_codboard, l_descrboard, l_TABNUM;
DBMS_OUTPUT.put_line(l_descrboard);
EXIT WHEN l_list_boards%NOTFOUND;
end loop;
close l_list_boards;
end;