DataSet类是ADO.NET中最核心的成员之一,也是各类开发基于.Net平台程序语言开发数据库应用程序最常接触的类。每个DataSet都有不少个DataTables和Relationships。RelationShip应该也是一种表,特殊的是,这个表只是用来联系两个数据表的。每个DataTable都有不少datarows和datacols, 也包括ParentRelations,ChildRelations 和一些限制条件像主键不能够重复的限制。
DataSet每一行有一个RowState属性。主要是反映当前行是否已经被删掉了,被更新了,仍是本没变。有以下的几个选项: Deleted, Modified, New, and Unchanged。
对DataSet的任何操做,都是在计算机缓存中完成的。
在从数据库完成数据抽取后,DataSet就是数据的存放地,它是各类数据源中的数据在计算机内存中映射成的缓存,因此有时说DataSet能够当作是一个数据容器。
DataSet对象是一个能够用XML形式表示的数据视图,是一种数据关系视图。
DataSet使用方法通常有三种:
1.把数据库中的数据经过DataAdapter对象填充DataSet
DataAdapter填充DataSet的过程分为二步:首先经过DataAdapter的SqlCommand属性从数据库中检索出须要的数据。SqlCommand实际上是一个Command对象。而后再经过DataAdapter的Fill方法把检索来的数据填充DataSet。
2.经过DataAdapter对象操做DataSet实现更新数据库
DataAdapter是经过其Update方法实现以DataSet中数据来更新数据库的。当DataSet实例中包含数据发生更改后,此时调用Update方法,DataAdapter 将分析已做出的更改并执行相应的命令(INSERT、UPDATE 或 DELETE),并以此命令来更新数据库中的数据。
3. 把XML数据流或文本加载到DataSet
DataSet中的数据能够从XML数据流或文档建立。加载XML数据流和文档到DataSet中是可以使用DataSet对象的ReadXml方法。
数据绑定分红二类:简单型数据绑定和复杂型数据绑定。适用于简单型数据绑定组件通常有Lable、TextBox等,适用于复杂性数据绑定的组件通常有DataGrid、ListBox、ComboBox等。
简单型数据绑定通常使用这些组件中的DataBindings属性的Add方法把DataSet中某一个DataTable中的某一行和组件的某个属性绑定起来,从而达到显示数据的效果。
好比:textBox1.DataBindings.Add ( "Text" , dsDataSet1, " Customers. CustomerID ") ;
复杂性数据绑定通常是设定组件的DataSource属性和DisplayMember属性来完成数据绑定的。DataSource属性值通常设定为要绑定的DataSet,DisplayMember属性值通常设定为要绑定的数据表或数据表中的某一列。
好比:dataGrid1.DataSource = dsDataSet1 ;
dataGrid1.DataMember = " Customers " ;
DataSet的属性Tables能够获取该DATASET中表的数量:DataSet.Tables.Count
DataSet的Tables是一个Table数组,指定其中的一个表:DataSet.Tables[i];//i为
Table在数组序列中的位置 或 DataSet.Tables["表名"];
经过Table的Rows对象组的Count获取该表的记录数:DataSet.Tables[i].Rows.Count;
获取列数:DataSet.Tables[i].Columns.Count;