Объект не найден, когда приложение ASP.NET пытается получить доступ к хранимой процедуре с использованием глобальной временной таблицы - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть приложение ASP.NET, которое обращается к базе данных Oracle 12.Я написал хранимую процедуру, используя глобальную временную таблицу, чтобы помочь.

Глобальная временная таблица создается с помощью 'ON COMMIT DELETE ROWS'.

В основном хранимая процедура выполняет следующие действия:

  • Получить некоторые данные.Добавьте символ столбца.Вставьте в глобальную временную таблицу.
  • Используйте клавишу (в каждой строке) для вызова другой хранимой процедуры.
  • Хранимая процедура возвращает «Y» или «N».
  • Возвращаемое значение будет обновлено до соответствующей строки в глобальной временной таблице.
  • После того, как все строки завершены, вернитесь так: open refcursor for select * from global_temp_table

Iпроверить хранимую процедуру.Он работает нормально.

Затем я добавляю еще одну функцию в свой веб-сервис (asmx) в свой проект ASP.NET.Я пытаюсь привлечь, но он говорит: «объект не найден».

Я прочитал несколько постов и сказал, что замените на «ON COMMIT PRESERVE ROWS».Я не хочу оставлять данные вокруг.Есть ли способ исправить эту проблему?Я уже искал некоторое время.

[Редактировать] Другие товарищи по команде добавили много других хранимых процедур в базу данных.Им не нужно предоставлять какое-либо право на это.Хранимые процедуры правильно выполняются при вызове из веб-сервиса.Конечно, их sp не используют глобальную временную таблицу.

Я искал в Интернете.Я видел подобные посты там.Вызов хранимой процедуры Oracle с использованием глобальной временной таблицы в ASP.NET покажет ту же ошибку - объект не найден.

В любом случае, я нашел способ обойти.То есть использовать предложение WITH.Вот ссылка на ссылку: https://oracle -base.com / articles / misc / with-clause

[/ Edit]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...