Querying with the DataReader
The CData ADO.NET Provider for CockroachDB implements two ADO.NET interfaces you can use to retrieve data from CockroachDB: CockroachDBDataAdapter and CockroachDBDataReader objects. Whereas CockroachDBDataAdapter objects retrieve a single result set of all the data that matches a query, CockroachDBDataReader objects fetch data in subset increments as needed.
Using the CockroachDBDataReader
The CockroachDBDataReader retrieves data faster than the CockroachDBDataAdapter because it can retrieve data in pages. As you read data from the CockroachDBDataReader, 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 "defaultdb"."public".Orders table:
C#
string connectionString = "User=root;Password=root;Database=system;Server=localhost;Port=26257"; using (CockroachDBConnection connection = new CockroachDBConnection(connectionString)) { CockroachDBCommand cmd = new CockroachDBCommand("SELECT * FROM \"defaultdb\".\"public\".Orders", connection); CockroachDBDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["ShipName"], rdr["ShipCity"])); } }
VB.NET
Dim connectionString As String = "User=root;Password=root;Database=system;Server=localhost;Port=26257" Using connection As New CockroachDBConnection(connectionString) Dim cmd As New CockroachDBCommand("SELECT * FROM \"defaultdb\".\"public\".Orders", connection) Dim rdr As CockroachDBDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("ShipName"), rdr("ShipCity"))) End While End Using