温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用C# DataSet实现查看返回结果集

发布时间:2020-10-28 17:02:29 来源:亿速云 阅读:423 作者:Leah 栏目:开发技术

今天就跟大家聊聊有关使用C# DataSet实现查看返回结果集,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

先看一段代码:  

private DataSet GetDataSet(string strsql)
{
 string strcon = "server = 192.168.2.1,1433;uid = sa ; pwd = 123456 ; database = MyDB";
 SqlConnection con = new SqlConnection(strcon);
 DataSet ds = new DataSet();
 try
  {
  SqlDataAdapter DA = new SqlDataAdapter(strsql, con);
  DA.Fill(ds, "tb");
  }
 catch (SqlException E)
  {
   throw new Exception(E.Message);
  }
  con.Close();//关闭数据库
  return ds;
}

以上是连接数据库,查询数据库并返回结果集。

主要看DataSet ds 返回值,怎么去获取返回的数据,ds.Tables.Count值为返回的表的数量。

如果查询sql语句中只有一个select,则返回一个table:

使用C# DataSet实现查看返回结果集

如果有10个select就会返回10个table:

使用C# DataSet实现查看返回结果集

ds.Tables[0].Rows.Count的值为第一个表数据的条数。(下面有23条数据)

使用C# DataSet实现查看返回结果集

ds.Tables[0].Rows[0].ItemArray[0]为第一个表,第一条数据的第一个值。

使用C# DataSet实现查看返回结果集

看到这里就应该知道怎么取返回结果集的数了,但是要注意一点,如果返回的某条数据本身就没有,

比如:查询的结果ds.Tables[0].Rows.Count=0,也就是说第一个表的数据条数为0,取值的时候程序写ds.Tables[0].Rows[0]就会报错,和数组越界是同样的(一个动态数组没分配空间就去访问就会报“访问越界”),所以这里面的数组应该都是动态数组。

因此,在取值前先判断一下ds.Tables.Count以及ds.Tables[0].Rows.Count等等的Count的大小,大于0再取值。一般都会使用for和while循环的取值,里面本来就带了判断条件,但在单个取值的时候一定要小心。

看完上述内容,你们对使用C# DataSet实现查看返回结果集有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI