C#中DataSet的用法

angryTom
發布: 2020-02-20 14:19:58
原創
4570 人瀏覽過

C#中DataSet的用法

C#中DataSet的用法

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形式表示的資料視圖,是一種資料關係視圖。

推薦教學:C#影片教學

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;

##更多

程式設計入門教學,請追蹤PHP中文網!        #

以上是C#中DataSet的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!