Academic Tutorials



English | French | Portugese | German | Italian
Google

Home Source Codes E-Books Downloads Contact Us About Us

ADO.NET
Introduction to ADO.NET
ADO.NET Data Providers
The SqlConnection Object
The SqlCommand Object
Reading Data with the SqlDataReader
Working with Disconnected Data
Adding Parameters to Commands

HTML Tutorials
HTML Tutorial
XHTML Tutorial
CSS Tutorial
TCP/IP Tutorial
XML Tutorials
XML Tutorial
XSL Tutorial
XSLT Tutorial
DTD Tutorial
Schema Tutorial
XForms Tutorial
XSL-FO Tutorial
XML DOM Tutorial
XLink Tutorial
XQuery Tutorial
XPath Tutorial
XPointer Tutorial
RDF Tutorial
SOAP Tutorial
WSDL Tutorial
RSS Tutorial
WAP Tutorial
Web Services Tutorial
Browser Scripting
JavaScript Tutorial
VBScript Tutorial
AJAX Tutorial
DHTML Tutorial
HTML DOM Tutorial
WMLScript Tutorial
E4X Tutorial
Server Scripting
ASP Tutorial
PHP Tutorial
PERL Tutorial
SQL Tutorial
ADO Tutorial
.NET (dotnet)
Microsoft.Net
XML Web Services
ASP.Net
.Net Mobile
C# : C Sharp
ADO.NET
VB.NET
Multimedia
SVG Tutorial
Flash Tutorial
Media Tutorial
SMIL Tutorial
Web Building
Web Browsers
Web Hosting
W3C Tutorial
Web Building
Web Quality
Web Semantic
Web Careers
Java Tutorials
Java Tutorial
JSP Tutorial
Servlets Tutorial
Struts Tutorial
EJB Tutorial
JMS Tutorial
JMX Tutorial
Programming Langauges
C Tutorial
C++ Tutorial
Visual Basic Tutorial
Data Structures Using C
Soft Skills
Communication Skills
Time Management
Project Management
Team Work
Leadership Skills
Corporate Communication
Negotiation Skills


Reading Data with the SqlDataReader

Previous Next

Introduction

An SqlDataReader is the type that is good for reading data in the most efficient manner. You can't use it for writing data. SqlDataReaders are often described as the fast-forward firehose-like streams of the data.

The forward only design of the SqlDataReader is what enables it to be fast enough. It doesn't have the overhead associated with traversing of the data or writing it back to the data source. Therefore, if your only requirement for the group of data is for reading one time and you want a fastest method possible, the SqlDataReader is a best choice. Also, if the amount of data you need to read is larger than what you would prefer to hold in the memory beyond an single call, then the streaming behavior of the SqlDataReader would be a good and best choice.




Creating a SqlDataReader Object
Getting an instance of the SqlDataReader is little different than the way you instantiate other ADO.NET objects. You must call ExecuteReader on the command object, like this:
SqlDataReader rdr = cmd.ExecuteReader();
The ExecuteReader method of the SqlCommand object, returns the SqlDataReader instance. Creating the SqlDataReader with a new operator doesn't do anything for you. As you learned in previous tutorials, the SqlCommand object references the connection and the SQL statement necessary for the SqlDataReader to obtain the data.



Reading Data

The SqlDataReader returns data via the sequential stream. To read this data, you must pull data from the table in row-by-row. Once the row has been read, the previous row is no longer available. To read that row again, you would have to create the new instance of the SqlDataReader and read through the data stream again.

The typical method of reading from the data stream returned by the SqlDataReader is to iterate through each row with the help of while loop.

while (rdr.Read())
{
string contact = (string)rdr["ContactName"];
string company = (string)rdr["CompanyName"];
string city = (string)rdr["City"];
Console.Write("{0,-25}", contact);
Console.Write("{0,-20}", city);
Console.Write("{0,-25}", company);
Console.WriteLine();
}

Notice the call to Read on the SqlDataReader, rdr, in the while loop condition in the example code shown above. The return value of Read is the type bool and returns true as long as there are more records to read. After the last record in the data stream has been read, Read returns the false value.

In previous Tutorial, we extracted the first column from the row by using a SqlDataReader indexer(rdr[0]). You can extract each column of the row with a numeric index like this, but it is not very readable. The example above uses a string indexer, where the string is the column name from the SQL query the table column name if you used an asterisk, *. String indexers are much more readable, making the code easier to maintain.




Share And Enjoy:These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • connotea
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Netvouz
  • RawSugar
  • Reddit
  • scuttle
  • Shadows
  • Simpy
  • Smarking
  • Spurl
  • TailRank
  • Wists
  • YahooMyWeb


Previous Next

Keywords: Reading Data with the SqlDataReader, vb net sqldatareader, asp net sqldatareader, asp net data, vb net data,sqldatareader c#, sqldatareader net, sqldatareader example, using sqldatareader, msdn sqldatareader, sqldatareader count, sqldatareader close, sqldatareader getstring, data net.


HTML Quizes
HTML Quiz
XHTML Quiz
CSS Quiz
TCP/IP Quiz
XML Quizes
XML Quiz
XSL Quiz
XSLT Quiz
DTD Quiz
Schema Quiz
XForms Quiz
XSL-FO Quiz
XML DOM Quiz
XLink Quiz
XQuery Quiz
XPath Quiz
XPointer Quiz
RDF Quiz
SOAP Quiz
WSDL Quiz
RSS Quiz
WAP Quiz
Web Services Quiz
Browser Scripting Quizes
JavaScript Quiz
VBScript Quiz
AJAX Quiz
DHTML Quiz
HTML DOM Quiz
WMLScript Quiz
E4X Quiz
Server Scripting Quizes
ASP Quiz
PHP Quiz
PERL Quiz
SQL Quiz
ADO Quiz
.NET (dotnet) Quizes
Microsoft.Net Quiz
XML Web Services Quiz
ASP.Net Quiz
.Net Mobile Quiz
C# : C Sharp Quiz
ADO.NET Quiz
VB.NET Quiz
Multimedia Quizes
SVG Quiz
Flash Quiz
Media Quiz
SMIL Quiz
Web Building  Quizes
Web Browsers Quiz
Web Hosting Quiz
W3C Quiz
Web Building Quiz
Web Quality Quiz
Web Semantic Quiz
Web Careers Quiz
Java Quizes
Java Quiz
JSP Quiz
Servlets Quiz
Struts Quiz
EJB Quiz
JMS Quiz
JMX Quiz
Programming Langauges Quizes
C Quiz
C++ Quiz
Visual Basic Quiz
Data Structures Using C Quiz
Soft Skills Quizes
Communication Skills Quiz
Time Management Quiz
Project Management Quiz
Team Work Quiz
Leadership Skills Quiz
Corporate Communication Quiz
Negotiation Skills Quiz

Privacy Policy
Copyright © 2003-2008 Vyom Technosoft Pvt. Ltd., All Rights Reserved.