Возвращенные типы из выполнения хранимой процедуры - PullRequest
0 голосов
/ 15 марта 2011

У меня есть SP, который я хочу выполнить и сохранить результат groos в стороне (в поле класса). Позже я хочу получить значения некоторых столбцов для некоторых строк из этого результата.

Какие возвращаемые типы возможны? Какой из них наиболее подходит для моей цели?
Я знаю, что есть DataSet, DataReader, resultSet. что еще?
В чем основное различие между ними?

Ответы [ 2 ]

0 голосов
/ 15 марта 2011

Традиционный способ получения данных - использование классов в пространстве имен System.Data.SqlClient. Вы можете использовать DataReader, который является типом курсора только для чтения, быстрый и эффективный, когда вы просто хотите прочитать набор записей. DataReader является привязываемым, но вы читаете его по одной записи за раз и поэтому не можете, например, вернуться назад. Если набор записей очень большой, читатель также хорош, потому что он хранит только одну запись за раз в памяти. Вы можете использовать DataAdapter и получить DataSet, а затем у вас будет полный контроль над всеми данными в классе DataSet. Это тяжелее в системе, но очень мощно, когда вам нужно работать с данными в вашем приложении. Вы также можете использовать DataSet, если запрос возвращает более одного набора записей.
Так что это действительно зависит от того, что вам нужно делать с данными после их получения из базы данных. Если вам просто нужно прочитать что-то другое, используйте DataReader, иначе DataSet.

0 голосов
/ 15 марта 2011

Если вы хотите сохранить результаты и использовать их позже (как вы написали), вы можете использовать массивные наборы данных или заполнить облегченные списки пользовательскими типами контейнеров через устройство чтения данных.Если вы хотите немедленно использовать результаты, продолжите работу с устройством чтения данных.

В качестве набора результатов используется старый класс VB6 AFAIK или текущий интерфейс Java.

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