ADO.NET Provider for Parquet

Build 20.0.7654

Querying with the DataReader

The CData ADO.NET Provider for Parquet implements two ADO.NET interfaces you can use to retrieve data from Parquet: ParquetDataAdapter and ParquetDataReader objects. Whereas ParquetDataAdapter objects retrieve a single result set of all the data that matches a query, ParquetDataReader objects fetch data in subset increments as needed.

Using the ParquetDataReader

The ParquetDataReader retrieves data faster than the ParquetDataAdapter because it can retrieve data in pages. As you read data from the ParquetDataReader, it periodically requests the next page of results from the data source, if required. This causes results to be returned at a faster rate. The following example selects all the columns from the SampleTable_1 table:


string connectionString = "URI=C:\folder\table.parquet;";

using (ParquetConnection connection = new ParquetConnection(connectionString)) {
  ParquetCommand cmd = new ParquetCommand("SELECT * FROM SampleTable_1", connection);
  ParquetDataReader rdr = cmd.ExecuteReader();

  while (rdr.Read()) {
    Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["Id"], rdr["Column1"]));


Dim connectionString As String = "URI=C:\folder\table.parquet;"

Using connection As New ParquetConnection(connectionString)
  Dim cmd As New ParquetCommand("SELECT * FROM SampleTable_1", connection)

  Dim rdr As ParquetDataReader = cmd.ExecuteReader()

  While rdr.Read()
    Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("Id"), rdr("Column1")))
  End While
End Using

Copyright (c) 2020 CData Software, Inc. - All rights reserved.
Build 20.0.7654