GetValue
Метод предоставляет значение указанного поля текущей строки выборки данных в виде .NET-объекта.
Примечание
Если в БД в поле DATE хранится значение 00.00.0000:00:00:00, то метод GetValue возвращает объект DateTime, который соответствует дате 01.01.1900:00:00:00.
Синтаксис
public abstract Object GetValue(int ordinal);
ordinal – порядковый номер поля в текущей строке выборки данных (отсчет начинается с 0).
Возвращаемое значение
Значение указанного поля в виде System.Object.
Для столбцов БД со значениями NULL возвращается объект DBNull.
Исключения
IndexOutOfRangeException | Задан порядковый номер несуществующего столбца. | |
InvalidOperationException | Не установлена текущая строка выборки данных (необходимо выполнить метод Read()). |
Пример
// C#
using System;
using System.Data;
using System.Data.Common;
class GetValue
{
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 model, personid from auto limit 2";
// Выполнение SQL-запроса
DbDataReader reader = cmd.ExecuteReader();
// Обработка результатов запроса
while (reader.Read())
{
Console.WriteLine("Автомобиль марки " + reader.GetValue(0) +
" принадлежит владельцу " + reader.GetValue(1));
}
// Освобождение ресурсов
reader.Dispose();
cmd.Dispose();
con.Dispose();
}
}
Результат выполнения примера:
Автомобиль марки MERCURY COMET GT V8 принадлежит владельцу 1
Автомобиль марки A-310 принадлежит владельцу 2