OleDbDataReader.GetValues(Object[]) Metoda

Definice

Naplní pole objektů hodnotami sloupců aktuálního řádku.

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

Parametry

values
Object[]

Pole Object , do kterého se mají kopírovat sloupce atributů.

Návraty

Počet instancí Object v poli.

Implementuje

Příklady

using System;
using System.Data;
using System.Data.OleDb;

class Class1 {
   public static void Main() {
      using (OleDbConnection connection =
         new OleDbConnection("Provider=SQLOLEDB;Data Source=(local);Integrated Security=SSPI;Initial Catalog=Northwind")) {

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

         OleDbCommand command = new OleDbCommand("select * from Region", connection);

         connection.Open();
         OleDbDataReader 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.OleDb

Module Module1
   Public Sub Main()
      Using connection As New OleDbConnection("Provider=SQLOLEDB;Data Source=(local);Integrated Security=SSPI;Initial Catalog=Northwind")
         Dim command As New OleDbCommand("select * from Region", connection)

         connection.Open()
         Dim reader As OleDbDataReader = 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

Poznámky

Pro většinu aplikací GetValues poskytuje metoda efektivní způsob načtení všech sloupců, místo toho, aby se každý sloupec načítá jednotlivě.

Můžete předat matici Object , která obsahuje méně než počet sloupců obsažených ve výsledném řádku. Do pole se zkopíruje pouze množství dat, Object které pole obsahuje. Můžete také předat matici Object , jejíž délka je větší než počet sloupců obsažených ve výsledném řádku.

Tato metoda vrátí DBNull pro sloupce databáze s hodnotou null.

Platí pro

Viz také