Невозможно найти fetchall при вызове хранимых процедур oracle из Django
Я новичок в базах данных Oracle. Мне нужно вызвать хранимую процедуру Oracle из моего проекта Django. Эта процедура возвращает курсор. Ниже приведена процедура
create or replace procedure test_proc (val in NVARCHAR2, c1 out SYS_REFCURSOR)
is
begin
open c1 for
select * from rfc_types_matcher;
end;
Вот как я делаю вызов процедуры из моего приложения Django
import cx_Oracle
dsn_tns = cx_Oracle.makedsn('host', '10710', service_name='sname')
conn = cx_Oracle.connect(user=r'user', password='pass', dsn=dsn_tns)
cursor = conn.cursor()
out_val = cursor.var(cx_Oracle.CURSOR)
params.append(out_val)
data1 = cursor.callproc(sp_name, params)
data = out_val.getvalue()
Но если я делаю cursor.fetchall(), он говорит, что это не запрос.
Но если я запускаю cursor.execute("raw query"), я могу получить cursor.fetchall()
Как получить набор результатов хранимой процедуры?