Поделиться через


OdbcDataReader.GetValues(Object[]) Метод

Определение

Заполняет массив объектов значениями столбцов текущей строки.

public:
 override int GetValues(cli::array <System::Object ^> ^ values);
public:
 virtual int GetValues(cli::array <System::Object ^> ^ values);
public override int GetValues (object[] values);
public int GetValues (object[] values);
override this.GetValues : obj[] -> int
abstract member GetValues : obj[] -> int
override this.GetValues : obj[] -> int
Public Overrides Function GetValues (values As Object()) As Integer
Public Function GetValues (values As Object()) As Integer

Параметры

values
Object[]

Массив типа Object, в который необходимо скопировать столбцы атрибутов.

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

Число экземпляров Object в массиве.

Реализации

Примеры

using System;
using System.Data;
using System.Data.Odbc;

class Class1 {
   public static void Main() {

      using (OdbcConnection connection =
         new OdbcConnection("Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\Northwind.mdb")) {

         object[] meta = new object[10];
         bool read;

         OdbcCommand command = new OdbcCommand("select * from Shippers", connection);
         connection.Open();
         OdbcDataReader reader = command.ExecuteReader();

         if (reader.Read() == true) {
            do {
               int NumberOfColums = reader.GetValues(meta);

               for (int i = 0; i < NumberOfColums; i++)
                  Console.Write("{0} ", meta[i].ToString());

               Console.WriteLine();
               read = reader.Read();
            } while (read == true);
         }
         reader.Close();
      }
   }
}
Imports System.Data
Imports System.Data.Odbc

Module Module1
   Public Sub Main()
      Using connection As New OdbcConnection("Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\Northwind.mdb")
         Dim command As New OdbcCommand("select * from Shippers", connection)

         connection.Open()
         Dim reader As OdbcDataReader = command.ExecuteReader()

         Dim NumberOfColums As Integer
         Dim meta As Object() = New Object(10) {}
         Dim read As Boolean

         If reader.Read() = True Then
            Do
               NumberOfColums = reader.GetValues(meta)
               For i As Integer = 0 To NumberOfColums - 1
                  Console.Write("{0} ", meta(i).ToString())
               Next
               Console.WriteLine()
               read = reader.Read()
            Loop While read = True
         End If

         reader.Close()
      End Using
   End Sub
End Module

Комментарии

Для большинства приложений GetValues метод предоставляет эффективные средства для получения всех столбцов вместо извлечения каждого столбца по отдельности.

Можно передать Object массив, содержащий меньшее количество столбцов, содержащихся в результирующей строке. В массив копируется только объем данных, Object который содержит массив. Можно также передать Object массив, длина которого превышает количество столбцов, содержащихся в результирующей строке.

Этот метод возвращает объекты DBNull для столбцов базы данных со значениями NULL.

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

См. также раздел