Вызовите хранимую процедуру Oracle с помощью EF Core executesQlrawC#

Место общения программистов C#
Ответить
Anonymous
 Вызовите хранимую процедуру Oracle с помощью EF Core executesQlraw

Сообщение Anonymous »

У меня есть процедура сохраненной Oracle (в пакете) со следующей подписью: < /p>

Код: Выделить всё

procedure My_StoredProcedure
(p_start_date IN DATE,
p_end_date IN DATE,
p_result_cursor OUT out_cursor,
p_message OUT VARCHAR2
);
, где out_cursor определяется в пакете как тип out_cursor - это ref cursor;
Поскольку это сохраненная процедура, в которой агрегаты 3 различных таблиц, я не имел ни одного объекта, сгенерированного (как дата, сначала) для получения консервативных процедур, после того, как в основе соказольты, используя основы для основы, использующую основу для основы. /> Код C# для метода, который вызывает эту хранимую процедуру: < /p>

Код: Выделить всё

var parameters = new[] {
new OracleParameter("p_start_date", OracleDbType.Date, startDate, ParameterDirection.Input),
new OracleParameter("p_end_date", OracleDbType.Date, endDate, ParameterDirection.Input),
new OracleParameter("p_result_cursor", OracleDbType.RefCursor, ParameterDirection.Output),
new OracleParameter("p_message", OracleDbType.Varchar2, ParameterDirection.Output)
};

var sql = "BEGIN MY_PKG.My_StoredProcedure(:p_start_date, :p_end_date, :p_result_cursor, :p_message); END;";

int rowsAffected = _dbContext.Database.ExecuteSqlRaw(storedProc, parameters);
Это не работает, как я и ожидал бы, хотя переменная Rowsefficed содержит -1, и нет никакой ошибки, я вижу, что ничто не возвращается в параметрах [2] или параметрах [3] параметров varible.
Я подозреваю, что определение Out_curs

Подробнее здесь: https://stackoverflow.com/questions/721 ... cutesqlraw
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»