用DataReader怎么获取返回的行数值
stringsql="SELECTcount(*)FROMUserInfoWHEREUserName=@UserName";SqlDataReaderreader=DBH...
string sql = "SELECT count(*) FROM UserInfo WHERE UserName = @UserName";SqlDataReader reader = DBHelper.GetReader(sql, new SqlParameter("@UserName", name)); reader.Read(); reader.NextResult(); user.Num = reader.GetValue; reader.Close();这样写是错的,该怎么改啊?要获得查询出count(*)的值。我这里是按姓名查找的,要求返回查到时返回1,查不到时返回0,关键就是不知道怎么获得count(*)的值,请高手指点一下,也可以说说其他的方法,先谢谢了!
展开
展开全部
看你的写法,GetReader方法应该返回的是DataReader,可使用以下方法获取
reader = DBHelper.GetReader(sql, new SqlParameter("@UserName", name));
reader.Read();
user.Num = Convert.ToInt32(reader[0].ToString());
reader.Close();
DBHelper是自自己定的类,看一下是否有ExecuteScalar方法,可直接获取第一行第一列的值。如果没有,可以在DBHelper类中自己定义该方法,返回command.ExecuteScalar()方法即可。
reader = DBHelper.GetReader(sql, new SqlParameter("@UserName", name));
reader.Read();
user.Num = Convert.ToInt32(reader[0].ToString());
reader.Close();
DBHelper是自自己定的类,看一下是否有ExecuteScalar方法,可直接获取第一行第一列的值。如果没有,可以在DBHelper类中自己定义该方法,返回command.ExecuteScalar()方法即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询