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;