Здравствуйте, уже второй день рою интернеты и ничего не могу найти.
Есть функция
create or replace PROCEDURE GET_GROUPS;
RESULT (
PARENT IN NUMBER,
NAME OUT VARCHAR2,
FULLNAME OUT VARCHAR2,
ID OUT NUMBER)
AS
BEGIN
SELECT
GA.ID, GA.NAME, GA.FULLNAME
INTO ID, NAME, FULLNAME
FROM
GROUPT GA
WHERE
GA.PARENT == PARENT
END;
Суть очень простая, по одному ид дергаем несколько.
Код в питоне:
con = system.db.connect()
cur = con.cursor()
raw_cur = cur.get_object()
res = [id_parent,raw_cur.var(str),raw_cur.var(str),raw_cur.var(int)]
res = cur.callproc('WHS.GET_GROUPS', res)
Конечно же ничего не работает, Sql говорит: Точная выборка возвращает количество строк больше запрошенного.
Как получить из процедуры таблицу? Как нормально передать туда переменные (мне кажется есть путь проще чем объявление переменных под выходные данные)?