У меня есть несколько хранимых процедур в моей базе данных, которые просто вставляют, обновляют и удаляют строки. Затем я вызываю эти процедуры из C# приложения с помощью OracleCommand.ExecuteNonQuery (). Я ожидал бы, что этот вызов вернет число затронутых строк, но он всегда возвращает -1.
Глядя на базу данных, все процедуры работают правильно и данные обновляются нормально.
Я слышал, что на SQL Сервер вы можете создать аналогичную проблему, если SET NOCOUNT
установлен на ON
. Однако в Oracle.
такой команды нет. Я знаю, что мог бы просто сделать каждую процедуру функцией и вернуть sql%count
, но это ненужная работа для функции, которая уже существует.
Что мне делать? Есть ли какая-нибудь команда Oracle magi c, которая заставляет ExecuteNonQuery()
возвращать количество затронутых строк?