Как выполнить итерацию в наборе результатов OracleDbType.RefCursor - PullRequest
1 голос
/ 16 июня 2011

В данный момент я немного застрял в своей реализации веб-сайта MVC 2, который получает данные из базы данных Oracle ... Сейчас я хочу пройтись через параметр RefCursor out, перейти к выводу всех результатов и сериализовать их в настроенная строка XML ...

Я что-то упускаю из-за RefCursor? Потому что после некоторого поиска, кажется, нет способа закинуть все возвращенные строки и столбцы. Я знаю, что вы можете получить DataReader от RefCursor ... Но DataReader кажется немного запутанным. Я просто хочу просмотреть все строки и столбцы возвращенного набора данных ... Я хотел бы, чтобы сохраненный конструктор процедур просто возвратил набор результатов вместо того, чтобы поместить его в чертов рефрактор. Я уверен, что у нее были свои причины, хотя.

Этот вопрос кажется небольшой лигой кустарников, и я буду продолжать исследовать лучший способ сделать это. Спасибо за любую информацию, которую вы можете предоставить ... Кроме того, я готов сделать это совершенно по-другому. Я не особо привязан к какому-либо способу циклического перемещения курсора ref.

P.S Похоже, я использовал устаревший способ в моем коде. Любая идея о том, как это сделать с помощью ODP.Net?

1 Ответ

2 голосов
/ 18 августа 2011

Я думаю, что эта ссылка: http://www.akadia.com/services/ora_return_result_set.html дает ответ, который вы хотите.Вы используете dataadapter, чтобы «заполнить» таблицу данными результатом refcursor функции.Затем вы можете перебрать таблицу данных.

Хотя, глядя на это поближе, я не вижу, как автор устанавливает связь между параметром refcursor 'out' и отображением таблицы 'emp'.

...