C# DataSet查看返回结果集的实现
#代码知识 发布时间: 2026-01-12
先看一段代码:
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:
如果有10个select就会返回10个table:
ds.Tables[0].Rows.Count的值为第一个表数据的条数。(下面有23条数据)
ds.Tables[0].Rows[0].ItemArray[0]为第一个表,第一条数据的第一个值。
看到这里就应该知道怎么取返回结果集的数了,但是要注意一点,如果返回的某条数据本身就没有,
比如:查询的结果ds.Tables[0].Rows.Count=0,也就是说第一个表的数据条数为0,取值的时候程序写ds.Tables[0].Rows[0]就会报错,和数组越界是同样的(一个动态数组没分配空间就去访问就会报“访问越界”),所以这里面的数组应该都是动态数组。
因此,在取值前先判断一下ds.Tables.Count以及ds.Tables[0].Rows.Count等等的Count的大小,大于0再取值。一般都会使用for和while循环的取值,里面本来就带了判断条件,但在单个取值的时候一定要小心。
上一篇 : 如何使用Git实现切换分支开发过程解析
下一篇 : 使用jdk1.8实现将list根据指定的值去分组的操作
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!