GetByte

Метод предоставляет приведенное к типу данных byte значение указанного поля текущей строки выборки данных. Т.к. в текущей версии ADO.NET-провайдера приведение типов не выполняется, то корректно метод может применяться только к полям с типом данных byte, varbyte, иначе будет выдано исключение.

Синтаксис
public abstract byte GetByte(int ordinal);

ordinal – порядковый номер столбца (отсчет начинается с 0).

Возвращаемое значение

Значение типа System.Byte указанного поля.

Исключения
InvalidCastException Невозможно преобразовать тип данных указанного столбца к типу данных byte.
IndexOutOfRangeException Задан порядковый номер несуществующего столбца.
InvalidOperationException Не установлена текущая строка выборки данных (необходимо выполнить метод Read()).
Пример
// C#
using System;
using System.Data;
using System.Data.Common;

class GetByte
{
  static void Main()
  {
    // Создание фабрики классов провайдера
    DbProviderFactory factory =
      DbProviderFactories.GetFactory("System.Data.LinterClient");
    // Соединение с БД
    DbConnection con = factory.CreateConnection();
    con.ConnectionString =
      "Data Source=LOCAL;User ID=SYSTEM;Password=MANAGER8";
    con.Open();
    // Создание объекта DbCommand
    DbCommand cmd = factory.CreateCommand();
    cmd.Connection = con;
    // Формирование текста SQL-запроса
    cmd.CommandText =
      "Select hex('134da75ff'), cast -0x23ca as byte(2)";
    // Выполнение SQL-запроса
    DbDataReader reader = cmd.ExecuteReader();
    // Обработка результатов запроса
    Byte value1;
    Byte value2;
    while (reader.Read())
    {
      value1 = reader.GetByte(0);
      value2 = reader.GetByte(1);
      Console.WriteLine(value1);
      Console.WriteLine(value2);
    }
    // Освобождение ресурсов
    reader.Dispose();
    cmd.Dispose();
    con.Dispose();
  }
}

Результат выполнения примера:

19
54