SqlDataReader Example – C# – SqlDataReader Example

SqlDataReader Example – C# – SqlDataReader Example

Purpose: – Illustrates using C# SqlDataReader to read sql table. Sqldatareader provides a way of reading a forward-only stream of rows from a SQL Server database. You must use ExecuteReader of the SqlCommand to create a sqldatareader as there is no constructor for it. The sqlConnection remains busy while the reader is open and can not be used to perform other operations until the reader is closed.

Prerequistes:

  1. Install C# (Express or Standard Edition)
  2. Install SQL Server Express
  3. Download Northwind Database
  4. Attach Northwind Database to Databases in Sql Express

Notes:

  • Console Application is used to simplify things, but Windows Forms or Web Forms could also be used
  • You can build a library of syntax examples by using same project over and over and just commenting out what you do not want to execute in Program.cs

Instructions:

  1. Use Visual Studio 2022 or current edition
  2. Create new project; select Console Application; name of Project could be CSharp_Syntax.
  3. Right-click project name in solution explorer; add new folder; name of folder could be DatabaseADONET
  4. Right-click folder; add class; class name could be clsSqlDataReader.cs
  5. Copy code into clsSqlDataReader.cs
  6. Copy code into Program.cs
  7. Click green arrow to start with debugging

Step 1: Use View Plain to Cut-n-paste code into clsSqlDataReader.cs

using System;
using System.Data;
using System.Data.SqlClient; 
 
public class clsSqlDataReader
{
static SqlConnection con;
public void Main()
{
con = new SqlConnection("Server=(local)\\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=SSPI");
 
SqlCommand cmd = new SqlCommand();
 
cmd.CommandText = "SELECT FirstName, LastName FROM Employees";
cmd.Connection = con;
 
try
{
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
//(CommandBehavior.SingleRow)
while (reader.Read())
{
Console.WriteLine("{0} - {1}", reader.GetString(0), reader.GetString(1));
}
reader.Close();
}
finally
{
con.Close();
}
Console.ReadLine();
}
}

Step 2: Use View Plain to Cut-n-paste code into Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace CSharp_Syntax
{
class Program
{
static void Main(string[] args)
{
//DatabaseADONET
 
clsSqlDataReader mySqlDataReader = new clsSqlDataReader();
mySqlDataReader.Main();
}
}
}