C#里的DataSet到底是干什么用的,怎么用?哪位高手帮我讲解讲解,谢谢啦!

如题所述

1.DataSet 是DataTable的集合,通过dataSet1.Tables[index] 方式得到DataTable
2.DataSet 及DataTable均存在与内存
3.DataSet中的DataTable可以只有一个,也可以有多个,多个之间可以有关系也可以没有关系相互独立;
4.DataTable可以通过dataSet1.Tables.Add加入到DataSet中,但此DataTable必须通过copy的方式加入,如:
DataTable dt1=new DataTable();
DataSet ds=new DataSet();
ds.Tables.Add(dt1);//错误
ds.Tables.Add(dt1.Copy());//正确
5.SqlDataAdapter可以填充DataSet也可以填充DataTable,根据实际需要,如sql查询的是返回多个记录集则用DataSet,单个记录集用DataSet和DataTable均可,只是通过dataSet1.Tables[0]转DataTable。
6.DataTable可以设置pk,DataSet中的Table可以设置relation
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-25
dataset是数据集对象,里面可以存放多张表。数据源是自己绑定的,之后可用dataset 的tables属性对表的内容进行操作追问

还是很模糊,能给个例子吗?

追答

SqlConnection conn = new SqlConnection("server=localhost;uid=sa;Password=sa;database=test");
string sql = "select * from tabletest";
SqlDataAdapter adp = new SqlDataAdapter(sql, conn);
SqlCommandBuilder builder = new SqlCommandBuilder(adp);
DataSet ds = new DataSet();
adp.Fill(ds, "tabletest");
foreach(DataRow row in ds.Tables["tabletest"])
{
......
}

本回答被提问者采纳
第2个回答  2012-08-01
是放数据用的,比如你去查数据库里的东西最后要放到哪里呢,就放这里
第3个回答  2012-08-01
DateSet是数据集对象,一个DataSet对象中可以包含多个数据表,相当于数据库在内存中的副本,可以方便的对数据进行操作。可以找相关的书籍具体了解一下。
第4个回答  2012-07-31
知道DataTable是干嘛的吗?DataSet可以存放很多个DataTable,用索引去找,你可以把他看作一个集合。只不过是存放DataTable的集合。明白了吗?追问

我太笨,不太明白您说的,我去看看DataTable是干什么的

相似回答