Show "No Records Found" Message

  • Thread starter Thread starter RN1
  • Start date Start date
R

RN1

Sub Page_Load(........)
If Not Page.IsPostBack Then
Call LoadData()
End If
End Sub

Sub LoadData()
Dim dSet As DataSet
Dim sqlConn As SqlConnection
Dim sqlDapter As SqlDataAdapter

sqlConn = New SqlConnection("............")
sqlDapter = New SqlDataAdapter("SELECT * FROM ETS", sqlConn)

dSet = New DataSet
sqlDapter.Fill(dSet, "ETS")

dgETS.DataSource = dSet.Tables("ETS").DefaultView
dgETS.DataBind()
End Sub
----------------------------------

Suppose the SQL SELECT query doesn't output any records i.e. the
database table is empty. How do I show a "No Records Found" message in
a Label to the user?

Thanks,

Ron
 
....
dSet = New DataSet
sqlDapter.Fill(dSet, "ETS")

dgETS.DataSource = dSet.Tables("ETS").DefaultView
dgETS.DataBind()
End Sub
----------------------------------

Suppose the SQL SELECT query doesn't output any records i.e. the
database table is empty. How do I show a "No Records Found" message in
a Label to the user?

If you are using ASP.NET 2.0, you could update the control from a DataGrid
(which I assume you are using based on the variable name dgETS) to a
GridView control. Then you could use the EmptyDataText or EmptyDataTemplate
properties to specify a message string or template to display when the
dataset is empty.

An alternative would be to test the return value from the call to Fill,
which returns the number of rows retrieved. You could then use this to
determine whether the data grid is displayed, or if instead a label on the
page is shown:

if sqlDapter.Fill(dSet, "ETS") = 0 then
dgETS.Visible = True
NoDataLabel.Visible = False
dgETS.DataSource = dSet.Tables("ETS").DefaultView
dgETS.DataBind()
else
dgETS.Visible = False
NoDataLabel.Visible = True
end if
 
Back
Top