OdbcDataReader Класс

Определение

Предоставляет способ чтения потока строк данных из источника только в прямом порядке.Provides a way of reading a forward-only stream of data rows from a data source. Этот класс не наследуется.This class cannot be inherited.

public ref class OdbcDataReader sealed : System::Data::Common::DbDataReader
public sealed class OdbcDataReader : System.Data.Common.DbDataReader
type OdbcDataReader = class
    inherit DbDataReader
Public NotInheritable Class OdbcDataReader
Inherits DbDataReader
Наследование
OdbcDataReader

Примеры

В следующем примере создается OdbcConnection, OdbcCommandи OdbcDataReader.The following example creates an OdbcConnection, an OdbcCommand, and an OdbcDataReader. Пример считывает данные, записывая их на консоль.The example reads through the data, writing it out to the console. Наконец, в примере закрывается OdbcDataReader, а затем OdbcConnection.Finally, the example closes the OdbcDataReader, and then the OdbcConnection.

public static void ReadData(string connectionString)
{
    string queryString = "SELECT DISTINCT CustomerID FROM Orders";

    using (OdbcConnection connection = new OdbcConnection(connectionString))
    {
        OdbcCommand command = new OdbcCommand(queryString, connection);

        connection.Open();

        // Execute the DataReader and access the data.
        OdbcDataReader reader = command.ExecuteReader();
        while (reader.Read())
        {
            Console.WriteLine("CustomerID={0}", reader[0]);
        }

        // Call Close when done reading.
        reader.Close();
    }
}
Public Sub ReadData(ByVal connectionString As String)
    Dim queryString As String = "SELECT DISTINCT CustomerID FROM Orders"

    Using connection As New OdbcConnection(connectionString)
        Dim command As New OdbcCommand(queryString, connection)

        connection.Open()

        Dim reader As OdbcDataReader = command.ExecuteReader()

        While reader.Read()
            Console.WriteLine("CustomerID={0}", reader(0).ToString)
        End While

        ' Call Close when done reading.
        reader.Close()
    End Using
End Sub

Комментарии

Чтобы создать OdbcDataReader, необходимо вызвать метод ExecuteReader объекта OdbcCommand, вместо того чтобы напрямую использовать конструктор.To create an OdbcDataReader, you must call the ExecuteReader method of the OdbcCommand object, instead of directly using a constructor.

Во время использования OdbcDataReader связанная OdbcConnection занята обслуживанием OdbcDataReader, и другие операции с OdbcConnection, кроме закрытия этого, не могут быть выполнены.While the OdbcDataReader is being used, the associated OdbcConnection is busy serving the OdbcDataReader, and no other operations can be performed on the OdbcConnection other than closing it. Это происходит до тех пор, пока не будет вызван метод Close OdbcDataReader.This is the case until the Close method of the OdbcDataReader is called. Например, нельзя получить выходные параметры до тех пор, пока не будет вызвана Close.For example, you cannot retrieve output parameters until after you call Close.

Изменения, внесенные в результирующий набор другим процессом или потоком во время чтения данных, могут быть видимы пользователю OdbcDataReader.Changes made to a result set by another process or thread while data is being read may be visible to the user of the OdbcDataReader. Однако точное поведение зависит от драйвера и от времени.However, the precise behavior is both driver and timing dependent.

IsClosed и RecordsAffected являются единственными свойствами, которые можно вызывать после закрытия OdbcDataReader.IsClosed and RecordsAffected are the only properties that you can call after the OdbcDataReader is closed. Иногда для вызова RecordsAffectedнеобходимо вызвать Close.Sometimes, you must call Close before you can call RecordsAffected.

Свойства

Depth

Возвращает значение, указывающее глубину вложенности для текущей строки.Gets a value that indicates the depth of nesting for the current row.

FieldCount

Возвращает число столбцов в текущей строке.Gets the number of columns in the current row.

HasRows

Получает значение, указывающее, содержит ли объект OdbcDataReader одну или несколько строк.Gets a value that indicates whether the OdbcDataReader contains one or more rows.

IsClosed

Указывает, закрыт ли объект OdbcDataReader.Indicates whether the OdbcDataReader is closed.

Item[Int32]

Возвращает значение указанного столбца в собственном формате при наличии заданного порядкового номера столбца.Gets the value of the specified column in its native format given the column ordinal.

Item[String]

Возвращает значение заданного столбца в собственном формате при наличии заданного имени столбца.Gets the value of the specified column in its native format given the column name.

RecordsAffected

Возвращает число строк, которые были изменены, вставлены или удалены инструкцией SQL.Gets the number of rows changed, inserted, or deleted by execution of the SQL statement.

VisibleFieldCount

Возвращает число не скрытых полей в DbDataReader.Gets the number of fields in the DbDataReader that are not hidden.

(Унаследовано от DbDataReader)

Методы

Close()

Закрывает объект OdbcDataReader.Closes the OdbcDataReader object.

CloseAsync()

Асинхронно закрывает объект DbDataReader.Asynchronously closes the DbDataReader object.

(Унаследовано от DbDataReader)
CreateObjRef(Type)

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Унаследовано от MarshalByRefObject)
Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса DbDataReader.Releases all resources used by the current instance of the DbDataReader class.

(Унаследовано от DbDataReader)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом DbDataReader, а при необходимости освобождает также управляемые ресурсы.Releases the unmanaged resources used by the DbDataReader and optionally releases the managed resources.

(Унаследовано от DbDataReader)
DisposeAsync()

Асинхронно освобождает все ресурсы, используемые текущим экземпляром класса DbDataReader.Asynchronously releases all resources used by the current instance of the DbDataReader class.

(Унаследовано от DbDataReader)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
Finalize()

Позволяет объекту предпринять попытку освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора.Allows the object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.

GetBoolean(Int32)

Возвращает значение указанного столбца в виде логического значения.Gets the value of the specified column as a Boolean.

GetByte(Int32)

Возвращает значение указанного столбца в виде байта.Gets the value of the specified column as a byte.

GetBytes(Int32, Int64, Byte[], Int32, Int32)

Считывает поток байтов из заданного смещения столбца в буфер в виде массива, начиная с конкретного смещения буфера.Reads a stream of bytes from the specified column offset into the buffer as an array, starting at the particular buffer offset.

GetChar(Int32)

Возвращает значение указанного столбца в виде символа.Gets the value of the specified column as a character.

GetChars(Int32, Int64, Char[], Int32, Int32)

Считывает поток символов из заданного смещения столбца в буфер в виде массива, начиная с конкретного смещения буфера.Reads a stream of characters from the specified column offset into the buffer as an array, starting at the particular buffer offset.

GetData(Int32)

Возвращает IDataReader для указанного порядкового номера столбца.Returns an IDataReader for the specified column ordinal.

GetDataTypeName(Int32)

Получает имя исходного типа данных.Gets the name of the source data type.

GetDate(Int32)

Возвращает значение указанного столбца в виде объекта DateTime.Gets the value of the specified column as a DateTime object.

GetDateTime(Int32)

Возвращает значение указанного столбца в виде объекта DateTime.Gets the value of the specified column as a DateTime object.

GetDbDataReader(Int32)

Возвращает объект DbDataReader для запрошенного порядкового номера столбца, который можно переопределить реализацией, зависящей от поставщика.Returns a DbDataReader object for the requested column ordinal that can be overridden with a provider-specific implementation.

(Унаследовано от DbDataReader)
GetDecimal(Int32)

Возвращает значение указанного столбца в виде объекта Decimal.Gets the value of the specified column as a Decimal object.

GetDouble(Int32)

Получает значение заданного столбца в виде числа двойной точности с плавающей запятой.Gets the value of the specified column as a double-precision floating-point number.

GetEnumerator()

Возвращает перечислитель IEnumerator, который может использоваться для просмотра строк в модуле чтения данных.Returns an IEnumerator that can be used to iterate through the rows in the data reader.

GetFieldType(Int32)

Возвращает тип Type, который является типом данных объекта.Gets the Type that is the data type of the object.

GetFieldValue<T>(Int32)

Возвращает значение указанного столбца в виде запрошенного типа.Gets the value of the specified column as the requested type.

(Унаследовано от DbDataReader)
GetFieldValueAsync<T>(Int32)

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.Asynchronously gets the value of the specified column as the requested type.

(Унаследовано от DbDataReader)
GetFieldValueAsync<T>(Int32, CancellationToken)

Асинхронно возвращает значение указанного столбца в виде запрошенного типа.Asynchronously gets the value of the specified column as the requested type.

(Унаследовано от DbDataReader)
GetFloat(Int32)

Возвращает значение указанного столбца в виде числа с плавающей запятой с одиночной точностью.Gets the value of the specified column as a single-precision floating-point number.

GetGuid(Int32)

Возвращает значение заданного столбца в виде глобального уникального идентификатора (GUID).Gets the value of the specified column as a globally unique identifier (GUID).

GetHashCode()

Служит в качестве хэш-функции по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetInt16(Int32)

Получает значение заданного столбца в виде 16-битового целого числа со знаком.Gets the value of the specified column as a 16-bit signed integer.

GetInt32(Int32)

Возвращает значение указанного столбца в виде 32-разрядного целого числа со знаком.Gets the value of the specified column as a 32-bit signed integer.

GetInt64(Int32)

Возвращает значение указанного столбца в виде 64-разрядного целого числа со знаком.Gets the value of the specified column as a 64-bit signed integer.

GetLifetimeService()

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Унаследовано от MarshalByRefObject)
GetName(Int32)

Возвращает имя заданного столбца.Gets the name of the specified column.

GetOrdinal(String)

Возвращает порядковый номер столбца при наличии заданного имени столбца.Gets the column ordinal, given the name of the column.

GetProviderSpecificFieldType(Int32)

Возвращает тип заданного столбца, зависящий от поставщика.Gets the provider-specific type of the specified column.

(Унаследовано от DbDataReader)
GetProviderSpecificValue(Int32)

Возвращает значение указанного столбца как экземпляр зависящего от поставщика типа.Gets the value of the specified column as an instance of a provider-specific type.

(Унаследовано от DbDataReader)
GetProviderSpecificValues(Object[])

Возвращает из коллекции все столбцы атрибутов, зависящие от поставщика, для текущей строки.Gets all provider-specific attribute columns in the collection for the current row.

(Унаследовано от DbDataReader)
GetSchemaTable()

Возвращает объект DataTable, описывающий метаданные столбцов модуля чтения данных OdbcDataReader.Returns a DataTable that describes the column metadata of the OdbcDataReader.

GetStream(Int32)

Возвращает поток для получения данных из указанного столбца.Gets a stream to retrieve data from the specified column.

(Унаследовано от DbDataReader)
GetString(Int32)

Возвращает значение заданного столбца в виде объекта String.Gets the value of the specified column as a String.

GetTextReader(Int32)

Получает модуль чтения текста для извлечения данных из столбца.Gets a text reader to retrieve data from the column.

(Унаследовано от DbDataReader)
GetTime(Int32)

Возвращает значение указанного столбца в виде объекта TimeSpan.Gets the value of the specified column as a TimeSpan object.

GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
GetValue(Int32)

Получает значение столбца с указанным порядковом номером в собственном формате.Gets the value of the column at the specified ordinal in its native format.

GetValues(Object[])

Заполняет массив объектов значениями столбцов текущей строки.Populates an array of objects with the column values of the current row.

InitializeLifetimeService()

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.Obtains a lifetime service object to control the lifetime policy for this instance.

(Унаследовано от MarshalByRefObject)
IsDBNull(Int32)

Возвращает значение, указывающее, содержатся ли в столбце несуществующие или отсутствующие значения.Gets a value that indicates whether the column contains nonexistent or missing values.

IsDBNullAsync(Int32)

Асинхронно получает значение, указывающее, содержит ли столбец несуществующие или пропущенные значения.Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

(Унаследовано от DbDataReader)
IsDBNullAsync(Int32, CancellationToken)

Асинхронно получает значение, указывающее, содержит ли столбец несуществующие или пропущенные значения.Asynchronously gets a value that indicates whether the column contains non-existent or missing values.

(Унаследовано от DbDataReader)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неполную копию текущего объекта MarshalByRefObject.Creates a shallow copy of the current MarshalByRefObject object.

(Унаследовано от MarshalByRefObject)
NextResult()

Перемещает объект OdbcDataReader в следующий результат, когда выполняется чтение результатов пакетных операторов SQL.Advances the OdbcDataReader to the next result when reading the results of batch SQL statements.

NextResultAsync()

Асинхронно перемещает модуль чтения данных к следующему результату при чтении результатов из пакета инструкций.Asynchronously advances the reader to the next result when reading the results of a batch of statements.

(Унаследовано от DbDataReader)
NextResultAsync(CancellationToken)

Асинхронно перемещает модуль чтения данных к следующему результату при чтении результатов из пакета инструкций.Asynchronously advances the reader to the next result when reading the results of a batch of statements.

(Унаследовано от DbDataReader)
Read()

Перемещает OdbcDataReader к следующей записи.Advances the OdbcDataReader to the next record.

ReadAsync()

Асинхронно перемещает модуль чтения к следующей записи в результирующем наборе.Asynchronously advances the reader to the next record in a result set.

(Унаследовано от DbDataReader)
ReadAsync(CancellationToken)

Асинхронно перемещает модуль чтения к следующей записи в результирующем наборе.Asynchronously advances the reader to the next record in a result set.

(Унаследовано от DbDataReader)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

IDataReader.Close()

Описание этого члена см. в разделе Close().For a description of this member, see Close().

(Унаследовано от DbDataReader)
IDataReader.GetSchemaTable()

Описание этого члена см. в разделе GetSchemaTable().For a description of this member, see GetSchemaTable().

(Унаследовано от DbDataReader)
IDataRecord.GetData(Int32)

Описание этого члена см. в разделе GetData(Int32).For a description of this member, see GetData(Int32).

(Унаследовано от DbDataReader)
IDisposable.Dispose()

Освобождает ресурсы, используемые текущим экземпляром класса OdbcDataReader.Releases all resources used by the current instance of the OdbcDataReader class.

IEnumerable.GetEnumerator()

Возвращает перечислитель для прохода по коллекции.Returns an enumerator that iterates through a collection.

Методы расширения

CanGetColumnSchema(DbDataReader)

Получает значение, которое указывает, может ли DbDataReader получить схему столбца.Gets a value that indicates whether a DbDataReader can get a column schema.

GetColumnSchema(DbDataReader)

Получает схему столбца (коллекцию DbColumn) для DbDataReader.Gets the column schema (DbColumn collection) for a DbDataReader.

Cast<TResult>(IEnumerable)

Приводит элементы объекта IEnumerable к заданному типу.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Позволяет осуществлять параллельный запрос.Enables parallelization of a query.

AsQueryable(IEnumerable)

Преобразовывает коллекцию IEnumerable в объект IQueryable.Converts an IEnumerable to an IQueryable.

Применяется к

Дополнительно