In this article I will explain with an example, how to fill (populate) DataTable using SqlDataAdapter in C# and VB.Net.
 
 
Database
For this article I am making use of the Microsoft’s Northwind Database. Download and install instructions are provided in the link below.
 
 
Adding a DataGridView to the Windows Form
Firstly you need to add a DataGridView control to the Windows Form from the Visual Studio ToolBox as shown below.
Fill (Populate) DataTable using SqlDataAdapter in C# and VB.Net
 
 
Namespaces
You will need to import the following namespaces.
C#
using System.Data;
using System.Data.SqlClient;
 
VB.Net
Imports System.Data
Imports System.Data.SqlClient
 
 
Fill (Populate) DataTable using SqlDataAdapter in C# and VB.Net
Inside the Form Initialize event handler, BindGrid method is called.
Inside BindGrid method, first a connection to the database is established using the SqlConnection class and then the SqlCommand is initialized with the SQL to be executed.
Finally SqlDataAdapter object is initialized with the SqlCommand and using the Fill function, the DataTable is populated with the records returned from the executed SQL statement.
C#
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        BindGrid();
    }
 
    private void BindGrid()
    {
        string constring = @"Data Source=.\SQL2005;Initial Catalog=Northwind;User id = sa;password=pass@123";
        using (SqlConnection con = new SqlConnection(constring))
        {
            using (SqlCommand cmd = new SqlCommand("SELECT * FROM Customers", con))
            {
                cmd.CommandType = CommandType.Text;
                using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                {
                    using (DataTable dt = new DataTable())
                    {
                        sda.Fill(dt);
                        dataGridView1.DataSource = dt;
                    }
                }
            }
        }
    }
}
 
VB.Net
Public Class Form1
    Public Sub New()
        InitializeComponent()
        BindGrid()
    End Sub
 
    Private Sub BindGrid()
        Dim constring As String = "Data Source=.\SQL2005;Initial Catalog=Northwind;User id = sa;password=pass@123"
        Using con As New SqlConnection(constring)
            Using cmd As New SqlCommand("SELECT * FROM Customers", con)
                cmd.CommandType = CommandType.Text
                Using sda As New SqlDataAdapter(cmd)
                    Using dt As New DataTable()
                        sda.Fill(dt)
                        dataGridView1.DataSource = dt
                    End Using
                End Using
            End Using
        End Using
    End Sub
End Class
 
 
Screenshot
Fill (Populate) DataTable using SqlDataAdapter in C# and VB.Net
 
 
Downloads