Класс DbDataReader
Класс DbDataReader
предназначен для однонаправленного просмотра (но не для изменения!) предоставляемых данных. После перехода к следующей записи выборки данных текущая запись становится недоступной.
Чтобы создать объект DbDataReader
без применения конструктора, необходимо вызвать метод ExecuteReader
объекта DbCommand
.
Для освобождения объекта DbDataReader надо использовать оператор using или блок try...finally (см. приложение 1).
Свойства класса приведены в таблице 15.
Таблица 15. Свойства класса DbDataReader
Свойство | Описание |
---|---|
Depth | Уровень вложенности текущей строки выборки данных (в иерархических запросах). |
FieldCount | Количество столбцов (с учетом скрытых столбцов) в выборке данных. |
HasRows | Индикатор наличия строк в выборке данных (т.е. позволяет проверить, пуста или нет выборка данных). |
IsClosed | Индикатор активности выборки данных. |
Item(Int32) | Значение столбца в текущей строке выборки данных по его порядковому номеру. |
Item(String) | Значение столбца в текущей строке выборки данных по его имени. |
RecordsAffected | Количество реально обработанных записей в БД после выполнения последнего SQL-запроса манипулирования данными (INSERT, DELETE, UPDATE). |
VisibleFieldCount | Количество видимых (не скрытых) столбцов в текущей выборке данных. |
IsBeforeReadState | Индикатор возможности работы с полями выборки данных. |
Методы класса приведены в таблице 16.
Таблица 16. Методы класса DbDataReader
Метод | Описание |
---|---|
Close
| Закрывает объект DbDataReader . |
GetBoolean
| Предоставляет приведенное к типу данных boolean значение указанного поля текущей строки выборки данных. |
GetByte
| Предоставляет приведенное к типу данных byte значение указанного поля текущей строки выборки данных. |
GetBytes
| Предоставляет приведенный к типу данных byte[] массив данных указанного поля текущей строки выборки данных. |
GetChar
| Предоставляет приведенный к типу данных char (в UTF-16 кодировке) первый символ указанного поля текущей строки выборки данных. |
GetChars
| Предоставляет приведенный к типу данных char[] массив данных указанного поля текущей строки выборки данных. |
GetData
| Предоставляет объект DbDataReader указанного поля текущей строки выборки данных. |
GetDataTypeName
| Предоставляет тип данных указанного поля текущей строки выборки данных |
GetDateTime
| Предоставляет значение типа DateTime указанного поля текущей строки выборки данных. |
GetDecimal
| Предоставляет значение типа Decimal указанного поля текущей строки выборки данных. |
GetDouble
| Предоставляет значение типа Double указанного поля текущей строки выборки данных. |
GetEnumerator
| Предоставляет перечислитель, используемый для перебора элементов в коллекции данных. |
GetFieldType
| Предоставляет тип данных указанного поля текущей строки выборки данных в формате .NET. |
GetFloat
| Предоставляет значение типа Float указанного поля текущей строки выборки данных. |
GetGuid
| Предоставляет значение в виде глобального уникального идентификатора (GUID) указанного поля текущей строки выборки данных. |
GetInt16
| Предоставляет значение в виде 16-битового целого числа со знаком указанного поля текущей строки выборки данных. |
GetInt32
| Предоставляет значение в виде 32-битового целого числа со знаком указанного поля текущей строки выборки данных. |
GetInt64
| Предоставляет значение в виде 64-битового целого числа со знаком указанного поля текущей строки выборки данных. |
GetLinterBlobForUpdate
| Предоставляет экземпляр класса LinterBlob для работы с BLOB-данными. |
GetName
| Предоставляет имя указанного поля текущей строки выборки данных. |
GetOrdinal
| Предоставляет порядковый номер указанного именованного поля текущей строки выборки данных. |
GetProviderSpecificFieldType
| Предоставляет тип данных указанного поля текущей строки выборки данных в терминах СУБД ЛИНТЕР |
GetProviderSpecificValue
| Предоставляет значение указанного поля текущей строки выборки данных в виде экземпляра класса Object . |
GetProviderSpecificValues
| Предоставляет массив значений всех полей текущей строки выборки данных. |
GetSchemaTable
| Предоставляет метаданные текущей выборки данных. |
FastGetSchemaTable
| Аналогичен методу GetSchemaTable (отличие в способе получения метаданных из БД). |
GetString
| Предоставляет символьное значение указанного поля текущей строки выборки данных. |
GetValue
| Предоставляет значение указанного поля текущей строки выборки данных в виде .NET-объекта. |
GetValues
| Предоставляет массив значений полей текущей строки выборки данных в виде .NET-объектов. |
IsDBNull
| Индикатор null-значения указанного поля текущей строки выборки данных. |
NextResult
| Выполняет переход к следующей выборке данных (в случае пакетного выполнения SQL-запросов). |
Read
| Предоставляет доступ к полям текущей строки выборки данных и перемещает указатель текущей строки выборки данных на следующую строку. |