IT>Вроде работает. Впрочем, MS SQL не возвращает курсоров.
Ага, у него вроде и типа да же такого нет, для параметров. А вот MS'ный DP для Oracle (System.Data.OracleClient) ведёт себя так же как и ODP.NET (Oracle.DataAccess.Client). Если пытаться вызать SP без параметров и она определена как
type refcursor is ref cursor;
function get_entities return refcursor;
происходит ошибка
ORA-06550: Строка 1, столбец 7:
PLS-00221: 'GET_ENTITIES' не является процедурой или не определена
ORA-06550: Строка 1, столбец 7:
PL/SQL: Statement ignored
если определена как
type refcursor is ref cursor;
procedure get_entities(p_entities out refcursor);
ошибка
ORA-06550: Строка 1, столбец 7:
PLS-00306: ошибочно число или типы аргументов при обращении к 'GET_ENTITIES'
ORA-06550: Строка 1, столбец 7:
PL/SQL: Statement ignored