怎么判断dataset表中无数据

naonaoye 2011-04-20 04:14:56
public int ReturnE1(string id)//返回e1
{
SqlConnection conn = new SqlConnection();
string css = ConfigurationManager.ConnectionStrings["asp"].ConnectionString;
conn.ConnectionString = css;
id = DropDownList1.SelectedValue.ToString();
string sq = "select e1 from testt where id='" + id + "'";
conn.Open();
SqlDataAdapter sda = new SqlDataAdapter(sq, conn);
DataSet ds = new DataSet();
sda.Fill(ds);
if (ds.Tables.Count == 1 && ds.Tables[0].Rows.Count == 0) return -1;//kong
else return 1;
ds.Clear();
conn.Close();
conn.Dispose();
}


为啥每次都返回1,是我哪里写错了?
...全文
272 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
laowang134 2011-04-20
  • 打赏
  • 举报
回复
你判断程序不对。怎么判断都是false;
naonaoye 2011-04-20
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 rpwlp888 的回复:]
if (ds.Tables.Count == 1 && ds.Tables[0].Rows.Count == 0) return -1;//kong
else return 1;

说明你的查询是能查到数据呀..没有问题呀.
[/Quote]
直接在SQl里查是没数据的
naonaoye 2011-04-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dalmeeme 的回复:]
说明sql语句不对,select返回了至少一条记录。
你可以试着输出ds.Tables[0].Rows[0][0].ToString()的值,看看是什么。
[/Quote]
返回" "
kzhsea 2011-04-20
  • 打赏
  • 举报
回复
ds.Tables[0].Rows.Count 是表里数据数 ds.Tables.Count是表的数量 (这条可以不要)
返回1证明有查到了数据
蓝色风影 2011-04-20
  • 打赏
  • 举报
回复
if (ds.Tables.Count == 1 && ds.Tables[0].Rows.Count == 0) return -1;//kong
else return 1;

说明你的查询是能查到数据呀..没有问题呀.
laowang134 2011-04-20
  • 打赏
  • 举报
回复
如果有数据。。ds.Tables.Count == 1为true; ds.Tables[0].Rows.Count == 0为false;最后还是false。。
白云任去留 2011-04-20
  • 打赏
  • 举报
回复
if(ds.Tables[0].Rows.Count == 0)//(为空)
{}
laowang134 2011-04-20
  • 打赏
  • 举报
回复
如果没有数据。ds.Tables.Count == 1为false;由于是&&后面部分都不用判断直接返回false了。
dalmeeme 2011-04-20
  • 打赏
  • 举报
回复
说明sql语句不对,select返回了至少一条记录。
你可以试着输出ds.Tables[0].Rows[0][0].ToString()的值,看看是什么。
laowang134 2011-04-20
  • 打赏
  • 举报
回复
不返回1, ds.Tables[0]该报错了。。你那里面有数据。
yangchun1213 2011-04-20
  • 打赏
  • 举报
回复
肯定写错了啦,
if (ds.Tables.Count == 1 && ds.Tables[0].Rows.Count == 0) return -1;//kong
else return 1;
你DataSet里有数据,肯定不会满足ds.Tables[0].Rows.Count == 0
所以会跑到Else里去啦
起码的逻辑都不清楚
cesc2011 2011-04-20
  • 打赏
  • 举报
回复
sda.Fill(ds);
if (ds.Tables.Count == 1 && ds.Tables[0].Rows.Count == 0) return -1;//kong
这里面插入 int aa = ds.Tables.Count看看 aa是多少,调试看看不就知道了?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧