从db检索数据时如何获取错误消息,但没有值

时间:2011-08-24 06:06:41

标签: c# asp.net sql-server

我有一张表说emp,因为我没有任何价值观。如果我在asp.net编码中使用此查询“select * from emp”,如下所示:

con.Open();
String str="select * from emp where empname='Abdul'";

cmd=new SqlCommand(str,con);
SqlDataReader dr=cmd.ExecuteReader();

while(dr.Read())
{
  textBox1.text=dr[0].ToString();
  textBox2.text=dr[0].ToString();
  textBox3.text=dr[0].ToString();
}

con.Close();

在emp表中,我没有任何empname作为abdul,当我这样做时它应该显示一些错误,怎么做?

3 个答案:

答案 0 :(得分:4)

做这样的事情:

if (dr == null || !dr.HasRows) 
{
//NO record found
   lblError.Text ="No Records Found!";
}
else
{
//Record Found SUCCESS!
while(dr.Read())
{
  textBox1.text=dr[0].ToString();
  textBox2.text=dr[0].ToString();
  textBox3.text=dr[0].ToString();
}

}

此致

答案 1 :(得分:1)

不会显示任何错误,因为只有在查询中有某些结果时才输入。

我会使用if / else,如果DataReader没有内容,因为没有找到结果,我会通知用户或在UI中显示内容,具体取决于应用程序的类型和您的确切需求。

答案 2 :(得分:0)

您可以将数据从SQLDataAdapter加载到DataSet中,并使用以下命令:

if (DataSet.Tables[0].Rows.Count <=0)
{

}