连笔字网 > 知识库

dataset,怎么遍历dataset取值?

来源:连笔字网 2023-11-28 15:19:57 作者:连笔君

怎么遍历dataset取值?

dataset ds=new dataset;
//获取dataset的第一张table,取其他table只须改下标
datatable dt=ds.tables[0];
//遍历行
foreach(datarow dr in dt.rows)
{
//遍历列
for(int i=0;i{
response.write(dr[i].tostring();
}
response.write("
");
}

dataset是什么意思

数据资料设置。
DataSet是ADO.NET的中心概念。可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库的独立数据集合。所谓独立,就是说,即使断开数据链路,或者关闭数据库,DataSet依然是可用的,DataSet在内部是用XML来描述数据的,由于XML是一种与平台无关、与语言无关的数据描述语言,而且可以描述复杂关系的数据,比如父子关系的数据,所以DataSet实际上可以容纳具有复杂关系的数据,而且不再依赖于数据库链路。

如何用for循环取得 dataset的每行值

DataSet ds = getdataset(SQL);
if (ds != null && ds.Tables.Count >0)
{
for (int q = 0; q < ds.Tables[0].Rows.Count; q++)
{ myvalue= ds.Tables[0].Rows[q][0].toString();
}
.................
}
}

在C#中页面上怎么循环读取DataSet中的每个值

dataset里面存放的是datatable ,datatable里面存放数据。知道这个特性以后就可以用最容易理解的循环步骤来获取dataset中每一个值:
1 循环dataset中的 datatable;
2 在上述循环里面循环每个datatable的rows;
3 在rows循环里面循环columns,从而获取dataset中每一个值。

如何获取DataSet中数据

DataSet 可以理解为内存数据库,里面包括了表,而表下面有行和列。
因此,第一步要确定是哪个表,可通过索引或表名来获取。
示例如下:
LabelText = DataSet11.Tables("COMM.USERS").Rows[0]["User_Name"].tostring()
LabelText = DataSet11.Tables("COMM.USERS").Rows(0).Item("user_name")
Label.Text=ds.Tables(0).Rows(i).Item( "列名 ")
Label.Text=ds.tables[0].rows[0][ "filed "]
Label.Text=ds.Tables[0].Rows[x][y]

逐条获取dataset数据

for(int ii=0;ii{
string value = dataset1.Tables[0].Rows[i]["列名"].ToString();//依此就可以了
}

怎用遍历dataset取出其中一部分字段的值?

神问题和神回答
问题是问的取DataSet 第 2,3,7列的值?存入List集合?
首先DataSet包含的表格里面才有行列概念,它自身哪有第几第几列,其次问的是列,但是有好多回答都是取的是行,行也就算了,关键是第2,3,7 索引应该是1,2,6
你们直接大大方方的写个2,3,7算是啥意思啊
其次,数据取出来了,你们用List来接受,你们居然真的打算是把这几列的数据首尾相接,给他拼出个8*3=24个string吗?你们觉得这可能这样吗?
这貌似取的是List 的节奏吧。

更多扩展补充

扩展

感觉您好厉害,可以给我写个代码么,枫之伤NO1回答的是不是把索引改一下就可以了?还有后面的问题,放到集合中就拼接了 不换行?没有按原来的列的格式吗?我要放到集合中然后导出到文本中,格式要和excel里面一样,只不过导出了部分列,用|分割,可不要全部在每列尾巴后面拼接呀!那就不是列了

补充

早一些说的详细点多好啊

Listresult = new List();//这个集合用来存储结果字符串
DataSet dt = new DataSet();//这里应该是从excel导入获取的dataset
DataTable dtsource = dt.Tables[0];//假如数据存放在dataset的第一个表中
for (int i = 0; i < dtsource.Rows.Count; i++)
{
string itemstring = string.Empty;
itemstring += dtsource.Rows[i][1].ToString()+"|";//第二列
itemstring += dtsource.Rows[i][2].ToString()+"|";//第三列
itemstring += dtsource.Rows[i][6].ToString();//第七列
result.Add(itemstring);
}
//下面测试写入文本

using(System.IO.StreamWriter sw = new System.IO.StreamWriter("D:\\1.txt"))
{
foreach (string item in result)
{
sw.WriteLine(item);
}
}

扩展

果然是大神级别的 最后一个问题 指定的列取出来之后 肯定是很多行的 如果我第一列中其中一行内容为chck,那怎么根据chck取出同一行的其他列数据输出到文本中?根据chck把QQQQ,EEEEE都输出?chck是临时变量 不固定

补充

稍微修改下for循环,加个判断

for (int i = 0; i < dtsource.Rows.Count; i++)

{

if (dtsource.Rows[i][1].ToString() == "chck")//就加这个条件 这个==后面的内容,你可以换成你需要匹配的变量就行

{

string itemstring = string.Empty;

itemstring += dtsource.Rows[i][1].ToString() + "|";//第二列

itemstring += dtsource.Rows[i][2].ToString() + "|";//第三列

itemstring += dtsource.Rows[i][6].ToString();//第七列

result.Add(itemstring);

}

}

扩展

大神您是不是不小心手抖了一下 怎么导出来是空的呀?

补充

大哥,你是不是C#刚搞吧,要不就是你数据源里,这个值他有空格
你走的是纯复制路吧 if语句里面
dtsource.Rows[i][1].ToString().Trim() == "chck" 这句加个Trim()
你也考虑考虑嘛,所有数据都倒得出来,加个条件,就不出来,也不可能的,除非就是条件没执行呗,数据格式不对呗这些。

如何获取dataset中的数据?并把获得的数据放在一个数组里面

const columnName = "你的列名";
DataSet ds; //你的ds
DataTable dt = ds.Tables[0];
String[] resultArray = new String[dt.Rows.Count];
int i = 0;
foreach(DataRow r in dt.Rows)
{
resultArray[i] = Convert.ToString(r[columnName]);
i++;
}
//resultArray里便是你要的结果,这里仅以字符串数组作为示例

如何获取DataSet数据表中某个字段值

DataSet 可以理解为内存数据库,里面包括了表,而表下面有行和列。
因此,第一步要确定是哪个表,可通过索引或表名来获取。
示例如下:
LabelText = DataSet11.Tables("COMM.USERS").Rows[0]["User_Name"].tostring()
LabelText = DataSet11.Tables("COMM.USERS").Rows(0).Item("user_name")
Label.Text=ds.Tables(0).Rows(i).Item( "列名 ")
Label.Text=ds.tables[0].rows[0][ "filed "]
Label.Text=ds.Tables[0].Rows[x][y]

C#遍历DataSet中数据的几种方法总结

//多表多行多列的情况foreach (DataTable dt in YourDataset.Tables) //遍历所有的datatable{foreach (DataRow dr in dt.Rows) ///遍历所有的行foreach (DataColumn dc in dt.Columns) //遍历所有的列Console.WriteLine(“{0}, {1}, {2}”, dt.TableName,dc.ColumnName, dr[dc]); //表名,列名,单元格数据}//遍历一个表多行多列foreach(DataRow mDr in dataSet.Tables[0].Rows ){foreach(DataColumn mDc in dataSet.Tables[0].Columns){Console.WriteLine(mDr[mDc].ToString());}}//遍历一个表多行一列foreach(DataRow row in DataSet1.Tables[0].Rows){

上一篇:seem的用法

下一篇:没有了

相关阅读