首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sqldatareader错误

sqldatareader错误
EN

Stack Overflow用户
提问于 2011-04-06 11:35:07
回答 2查看 357关注 0票数 0

我想检查sqldatareader是否为空。所以我尝试了下面的代码:

代码语言:javascript
复制
if (x[k]!= DBNull.Value)   
{
  box.Text = Convert.ToString(x[k++]);

  if ((box.Text) != "")
    current[j - 1] = Convert.ToDouble(box.Text);
  else current[j - 1] = 0;

  box.Enabled = false;
}

但是,当尝试检查datareader中的值时,它会抛出一个错误,“当没有数据时,读取数据的尝试无效”。我还应该如何检查数据是否在那里。!!请帮帮忙。这里x是一个sqldatareader x= cmd.ExecuteReader();SqlDataReader是一个select命令..

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-06 11:38:42

您可以执行null检查,并在访问DataRows之前使用Row。

像这样

代码语言:javascript
复制
if(null != x && x.HasRows)
{
//Your code
}
票数 0
EN

Stack Overflow用户

发布于 2011-04-06 11:37:21

您可以使用SqlDataReader.HasRows -如果存在至少一行数据,则为真,或者您可以使用SqlDataReader.Read()读取所有结果;

因此,对于您的示例:

代码语言:javascript
复制
while(x.Read())
{
  //read stuff
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5561162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档