ExecuteScalar()返回查询结果集的第一行第一列,object类型。
当我用此方法查找某人工资时:
string
sql = "select salary from UserInfo where UserName=@UserName";
...
int result = (int)cmd.ExecuteScalar();
this.label3.Text = username + " 's salary is $" + result.ToString() ;
但是如果返回值为空即数据没找到,就会抛出异常。如果先判断 if (cmd.ExecuteScalar() == null) 那么当输入正确时,ExecuteScalar就要执行两次。用下面的方法可以只执行一次:
object obj = cmd.ExecuteScalar();
if (obj ==null)
this.label3.Text = "Can't find " + username + ".";
else this.label3.Text = username + " 's salary is $" + obj.ToString() + ".";
conn.Close();
本文介绍了如何使用ADO.NET中的ExecuteScalar()方法来高效地获取单个查询结果,并讨论了如何优雅地处理空值的情况,避免异常并提高用户体验。
7514

被折叠的 条评论
为什么被折叠?



