DataTable VS DataSet

  一直不清楚DataTable与DataSet的区别,也很少用到这些概念。因为平时写东西用到数据绑定基本上都是字定义到List中,然后逐个绑定到UI上。直到前段时间看同事写的代码,发现在数据库与UI数据绑定赋值过程中,用到这些感觉挺不错的,而且简单方便,所以就想弄清楚他们之间的区别以及如何使用。

DataSet:

dataset是数据集,数据集里包含datatable,还有数据表之间的关系等,一个数据集可以不包含表,一个或多个datatable表。简而言之,

DataSet:数据集。一般包含多个DataTable,用的时候,dataset["表名"]得到DataTable  

 

DataTable:

datatable是数据表,它有列columns,行rows等。DataView是视图,DataView用来创建DataTable中所存储数据的不同视图,通常用于数据绑定  
  DataView   DV   =   ds.Tables["表名"].DefaultView;  
  DataGrid1.DataSource=DV;

DataTable数据表使用:

1.  直接赋值给DataTable
  SqlDataAdapter   da=new   SqlDataAdapter(cmd);   
   DataTable   dt=new   DataTable();   
   da.Fill(dt);  

2. 直接把数据结果放到DataSet中
 SqlDataAdapter   da=new   SqlDataAdapter(cmd);   
   DataSet   dt=new   DataSet();   
   da.Fill(dt);    

 数据结果放到dataset中,若要用那个datatable,可以这样:dataset[0]   
 更常见的用法( 在赋值过程中对DataSet中Table命名):  
  SqlDataAdapter   da=new   SqlDataAdapter(cmd);  
  DataSet   dt=new   DataSet();  
  da.Fill(dt,"table1");  
  用的时候:这样取datatable:  dataset["table1"]  

 

posted @ 2013-08-26 14:51  Blackeye  阅读(598)  评论(0)    收藏  举报