Aracılığıyla paylaş


AdomdDataReader kullanarak veri alma

Analitik veri alırken AdomdDataReader nesnesi genel giderleri ve arasında iyi bir denge sağlaretkileşim. The AdomdDataReader object retrieves a read-only, forward-only, flattened stream of data from an analytical data source.Verimli bir analitik veri sonuçlarını işlemek yordamsal mantık unbuffered bu veri akışı sağlayan kaynak sırayla.Bu AdomdDataReader iyi bir seçim, büyük miktarlarda veri alma görüntülemek amacıyla çünkü veri belleği önbelleğe alınmaz

The AdomdDataReader can also increase application performance by retrieving data as soon as it is available, instead of waiting for the complete results of the query to be returned.The AdomdDataReader also reduces system overhead because, by default, this reader stores only one row at a time in memory.

En iyi duruma getirilmiş performans için kullanýcýnýzýn olan AdomdDataReader nesnesi, daha az'den alınan veriler hakkında bilgi sağlardiğer veri alma yöntemleri. The AdomdDataReader object does not support a large object model for representing data or metadata, nor does this object model allow for more complex analytical features like cell writeback.Ancak, AdomdDataReader nesne hücre küme küme veri ve hücre küme meta veriler sekmeli biçimde alma yöntem almak için türü kesin belirlenmiş yöntemler küme sağlarAyrıca, AdomdDataReader uygulayan IDbDataReader destek veri bağlama için ve verileri kullanarak almak için arabirim SelectCommand yöntem, dan System.Data ad alanı Microsoft..NET Framework sınıf kitaplığı.

AdomdDataReader veri alınıyor

Kullanmak için AdomdDataReader Nesne verileri almak için aşağıdaki adımları izleyin:

  1. Yeni bir oluşturmak örnek nesnesi.

    Yeni bir oluşturmak için örnek , AdomdDataReader , sınıf, çağrı Execute veya ExecuteReader yöntem, AdomdCommand nesne.

  2. Verileri almak.

    adomd sorgu komut çalışır gibi.net sonuçlar verir Resultset biçimi, sekmeli biçimde açıklandığı gibi XML for Analysis için veri düzleştirmek için belirtim, AdomdDataReader nesne.Sekmeli biçimde değişken dimensionality gibi veriler de dikkate alındığında analitik veri sorgularken kullanılmaz.

    ADOMD.NETbunları aşağıdaki yöntemlerden birini kullanarak isteği yapana kadar bu sekmeli sonuçlar istemci üzerinde ağ arabelleği depolar:

    • Call Read yöntem, AdomdDataReader nesne.

      The Read method obtains a row from the query results.Daha sonra adı veya sütun için sıralı başvuruyla iletebilirsiniz Item özellik döndürülen satır, her sütun erişmek için.Örneğin, ilk sütun adlı geçerli satırda bulunan, sütunadı.Daha sonra ya da reader[0].ToString() veya reader["ColumnName"].ToString() ilk içeriğini döndürür sütun geçerli satır.

    • Yazılı erişimci yöntemleri birini arayın.

      The AdomdDataReader provides a series of typed accessor methods—methods that let you access column values in their native data types.Ne zaman bildiğiniz yazılı bir sütun değeri temel alınan veri türü erişimci yöntem türü dönüştürme sütun değeri alınırken gerekli miktarını azaltır ve böylece, en yüksek performans sağlar.

      Mevcut yazılı erişimci yöntemleri bazıları GetDateTime, GetDouble, ve GetInt32.Yazılı erişimci yöntemleri tam listesi için bkz: AdomdDataReader.

  3. Okuyucu kapatın.

    Her zaman çağırmalıdır Close yöntem ile işiniz bittiğinde AdomdDataReader nesne.Sırada bir örnek , bir AdomdDataReader nesne açıksa, AdomdConnection tarafından özel olarak, kullanılıyor AdomdDataReader.Herhangi bir komut çalıştırmak mümkün olmayacak örnek , AdomdConnection, dahil oluşturma başka AdomdDataReader ya da System.Xml.XmlReaderkadar özgün kapatın, AdomdDataReader.

Örnek AdomdDataReader veri alınıyor

Aşağıdaki kod örneği arasında dolaşır bir AdomdDataReader object ve ilk iki değer her satır. dizeleri döndürür

If Reader.HasRows Then
    Do While objReader.Read()
        Console.WriteLine(vbTab & "{0}" & vbTab & "{1}", _
            objReader.GetString(0), objReader.GetString(1))
    Loop
Else
  Console.WriteLine("No rows returned.")
End If

objReader.Close()
if (objReader.HasRows)
  while (objReader.Read())
    Console.WriteLine("\t{0}\t{1}", _
        objReader.GetString(0), objReader.GetString(1));
else
  Console.WriteLine("No rows returned.");

objReader.Close();

AdomdDataReader meta veri alma

While an instance of an AdomdDataReader object is open, you can retrieve schema information, or metadata, about the current recordset using the GetSchemaTable method.GetSchemaTable returns a DataTable object that is populated with the schema information for the current recordset.The DataTable will contain one row for each column of the recordset.hücre kümesi kümesi kümesi kümesinde döndürülen sütun özelliğine şeması tablo satırının her sütun eşleştirir nerede ColumnName özelliğinin adı ve değeri sütunun değerinin özellik.

Örnek AdomdDataReader meta veri alma

Aşağıdaki kod örneği şema bilgileri için yazdığı bir AdomdDataReader nesne.

Dim schemaTable As DataTable = objReader.GetSchemaTable()

Dim objRow As DataRow
Dim objColumn As DataColumn

For Each objRow In schemaTable.Rows
  For Each objColumn In schemaTable.Columns
    Console.WriteLine(objColumn.ColumnName & " = " & objRow(objColumn).ToString())
  Next
  Console.WriteLine()
Next
DataTable schemaTable = objReader.GetSchemaTable();
foreach (DataRow objRow in schemaTable.Rows)
{
  foreach (DataColumn objColumn in schemaTable.Columns)
    Console.WriteLine(objColumn.ColumnName + " = " + objRow[objColumn]);
  Console.WriteLine();
}

Birden çok sonuç kümeleri alınırken

Veri madenciliği kavramı, iç içe geçmiş tablolar destekler, ADOMD.NET iç içe satır kümeleri sunar.Her satırı ile ilişkili iç içe satır kümesi almak için arama GetDataReader yöntem.